我正在尝试使用System.Collections.Specialized.StringDictionary将配对值保存到settings.settings文件中。
我运行我的应用程序,更新了设置,做了Settings.Default.Save() 并在启动应用程序时再次注意到新设置不起作用!
查看创建的user.config,StringDictionary被序列化
到<value />
。
如果有任何替代方案或可以解决这个问题,请建议我。
答案 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
是我的设置的名称。这似乎已经解决了问题。