C# 设置文件中的任意数据类型
Settings.Settings文件中有一些默认列出的数据类型,当您选择“浏览”时,您可以从树中添加更多数据类型 我实际上需要在我的设置文件中存储一个C# 设置文件中的任意数据类型,c#,settings.settings,C#,Settings.settings,Settings.Settings文件中有一些默认列出的数据类型,当您选择“浏览”时,您可以从树中添加更多数据类型 我实际上需要在我的设置文件中存储一个int[],并且是这样做的: [global::System.Configuration.UserScopedSettingAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Configuration.DefaultSe
int[]
,并且是这样做的:
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public int[] SPLTimings
{
get
{
return ((int[])(this["SPLTimings"]));
}
set
{
this["SPLTimings"] = value;
}
}
在程序第一次运行时:
int[] timings = Settings.SPLTimings ?? new int[] { 25, 100, 80, 50, 125, 50 };
之后会保存到磁盘。使用Settings.Save()
这很有效,但有一个小问题。如果我想使用设置GUI界面添加一个简单的数据类型,那么我的自定义添加将被删除,我必须再次添加它们。我目前只有一个特例,所以如果它被删除了,添加它也没什么大不了的。另一方面,我可以像添加int[]
:直接将其编码到settings.Designer文件中一样,添加后续的基本设置,如strings/ints/etc
一定有更好的办法吗
既然
Settings
类已经是部分的,那么创建一个新文件(比如CustomSettings)是否会是一个更好的解决方案,该文件继续类定义并包含这些模糊类型?Settings.Designer.cs
是自动生成的。因此,是的,您可以使用这个类是分部的事实,并使用相同的类定义定义您自己的设置。
这样,设置将不会被覆盖