应用程序重新启动后,System.Collections.Specialized.StringDictionary未保留已保存的设置

时间:2015-01-14 06:35:15

标签: c# settings.settings

我正在尝试使用System.Collections.Specialized.StringDictionary将配对值保存到settings.settings文件中。

我运行我的应用程序,更新了设置,做了Settings.Default.Save() 并在启动应用程序时再次注意到新设置不起作用!

查看创建的user.config,StringDictionary被序列化 到<value />

如果有任何替代方案或可以解决这个问题,请建议我。

1 个答案:

答案 0 :(得分:0)

@kns为我提供了解决方案。我只是在[global::System.Configuration.SettingsSerializeAs(global::System.Configuration.SettingsSerializeAs.Binary)]文件的StringDictionary属性上方添加了Settings.Designer.cs行,如下所示:

[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.SettingsSerializeAs(global::System.Configuration.SettingsSerializeAs.Binary)]
public global::System.Collections.Specialized.StringDictionary customSetPhrases {
 get {
            return ((global::System.Collections.Specialized.StringDictionary)(this["customSetPhrases"]));
        }
        set {
            this["customSetPhrases"] = value;
        }
    }

其中customSetPhrases是我的设置的名称。这似乎已经解决了问题。