|
|
1
140
还有另一个解决方案-需要对设置文件进行一些手动编辑,但之后在VS环境和代码中工作良好。并且不需要额外的函数或包装。
问题是,VS允许序列化
现在转到项目文件夹,用文本编辑器(例如记事本)打开“Properties\Settings.Settings”文件,或者在解决方案资源管理器中右键单击“->房地产->Settings.Settings”,选择“打开时使用…”,然后选择“XML编辑器”或“源代码(文本)编辑器”。 在打开的xml设置中找到您的设置(如下所示):
将“类型”参数从
现在保存更改并重新打开项目设置-瞧我们有一个类型为SomeTestSetting的设置
|
|
|
2
42
要重新创建:
编辑:阿贝尔建议! |
|
|
3
11
还有一种方法可以实现这个结果,它的使用更加简洁,但需要更多的代码。实现自定义类型和类型转换器时,可以使用以下代码:
要实现这一点,您需要一个带有类型转换器的类型,该类型转换器允许在字符串之间进行转换。您可以通过使用TypeConverterAttribute装饰类型来完成此操作:
然后将此类型转换器作为TypeConverter的派生实现:
通过在MyNumberArray类上提供一些方便的方法,我们可以安全地从列表中分配到或分配给它,完整的类将如下所示:
最后,要在设置中使用它,需要将上述类添加到程序集并编译。在Settings.Settings编辑器中,您只需单击“浏览”选项并选择MyNumberArray类即可。 这是更多的代码;但是,它可以应用于比简单数组更复杂的数据类型。 |
|
|
4
3
|
|
|
5
2
一个简单的解决方案是在属性中将设置的默认值设置为null,但在构造函数中检查属性是否为null,如果为null,则将其设置为实际的默认值。因此,如果您想要一个整数数组:
|
|
|
6
1
使用
例子:
摘录:
|
|
|
7
0
我认为你对序列化设置的看法是正确的。有关示例,请参见我对该问题的回答: Techniques for sharing a config between two apps? 您将拥有一个数组属性,如下所示:
|
|
|
8
0
因此,如果数组是{1,34546,56},字符串将是“13464556” |
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 1 年前 |
|
|
bairog · 从按属性筛选的对象数组字典中创建值数组 1 年前 |
|
|
Anka Hanım · 关于结构和动态数组地址的问题 1 年前 |
|
|
Geremia · 2D NumPy数组+1D数组? 1 年前 |
|
|
MARTIN · 交换第一个和最后一个单词,反转所有中间的字符 1 年前 |
|
|
Paul Williams · 迭代数组时输出有问题 1 年前 |