2

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

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

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

这是我尝试设置 dbLocation 设置的方法。

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

这就是 getter 和 setter 的外观。get 部分是由 Visual Studio 生成的,我添加了 set 部分,这是问题所在(我认为)。

[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
     }

}
4

1 回答 1

4

设置属性是不够的。您还需要保存它:

DBce_TEST2.Properties.Settings.Default.dbLocation = fileName;
DBce_TEST2.Properties.Settings.Default.Save();
于 2013-11-11T18:56:00.867 回答