作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我有一个包含两个字符串的小类,如下所示:
public class ReportType
{
private string displayName;
public string DisplayName
{
get { return displayName; }
}
private string reportName;
public string ReportName
{
get { return reportName; }
}
public ReportType(string displayName, string reportName)
{
this.displayName = displayName;
this.reportName = reportName;
}
}
我想将此类的一个实例保存到我的设置文件中,以便我可以执行以下操作:
ReportType reportType = Settings.Default.SelectedReportType;
谷歌搜索似乎表明这是可能的,但似乎没有任何地方可供我遵循的明确指南。我知道需要进行一些序列化,但真的不知道从哪里开始。此外,当我进入 Visual Studio 中的“设置”屏幕并单击“类型”列下的“浏览”时,没有选项可以选择包含 ReportType 类的当前命名空间。
最佳答案
好的,我想我最终已经解决了。首先要做的是为需要序列化的ReportType类的每个属性添加如下属性,并从ApplicationSettingsBase继承该类:
public class ReportType : ApplicationSettingsBase
{
private string displayName;
[UserScopedSetting()]
[SettingsSerializeAs(System.Configuration.SettingsSerializeAs.Xml)]
public string DisplayName
{
get { return displayName; }
}
................................
然后,一旦您重建了程序集(重要!),您可以进入设置屏幕并单击浏览,然后在底部的文本框中键入您的命名空间和类名(例如 Label_Creator.ReportType)。 namespace 和类名不会出现在树中,因此这部分不是很明显您需要做什么,这就是为什么它有点令人困惑....
关于c# - 如何将自定义类保存/序列化到设置文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1321248/
我是一名优秀的程序员,十分优秀!