在运行时设置设置

时间:2013-11-11 18:53:02

标签: c# properties

我在运行时设置应用程序属性时遇到问题。我的应用程序连接到数据库,因此我存储了数据库的位置,用于生成连接字符串。

数据库存储在usb棒上,因此当插入不同的计算机时,它会检查数据库是否存在于保存的位置,如果不存在,则会提示用户在OpenFileDialog中选择它。

然后我尝试将其存储为设置,在应用程序打开时保存,但是一旦应用程序关闭,设置将恢复为默认值。

以下是我尝试设置dbLocation设置的方法。

DBce_TEST2.Properties.Settings.Default.dbLocation = fileName;

这就是getter和setter的外观。获取部分是由visual studio生成的,我添加了问题所在的设置部分(我认为)。

[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("E:\\C# Projects\\DBce_TEST2\\TestDB2.sdf")]
public string dbLocation {
     get {
          return ((string)(this["dbLocation"]));
     }
     set
     {
          this["dbLocation"] = value; //most likely error here
     }

}

1 个答案:

答案 0 :(得分:4)

设置属性是不够的。你也需要保存它:

DBce_TEST2.Properties.Settings.Default.dbLocation = fileName;
DBce_TEST2.Properties.Settings.Default.Save();