首页 > 解决方案 > 更改属性值时如何更新数据库值?

问题描述

我有这个代码:

public static class Settings
{
    public static int Trk5 { get; set; }
}

Settings.Trk5 = 2;
db2.Update(new Setting { "Trk5", Value = val.ToString() });

以某种方式将数据库的更新与变量的设置结合起来会是一个好主意吗?如果是这样,我该怎么做?

我可以将 db2.Update 合并到集合中吗?不知何故?

标签: c#

解决方案


您可以让属性将自身保存在其设置器中(如@Alsein 建议的)。为此,您需要将您的自动属性转换为完整属性。

也许这可能有效:

public static class Settings
{
    private static int trk5;

    public static int Trk5
    {
        get { return trk5; }
        set
        {
            if (trk5 != value)
            {
                trk5 = value;
                db2.Update(new Setting { "Trk5", Value = value.ToString() });
            }
        }
    }
}

Settings.Trk5 = 2;

但是,我怀疑您的db2.Update电话是否会以这种方式工作。您正在Setting那里创建一个新实例,但您没有为该"Trk5"值指定属性名称...


推荐阅读