C# Visual Studio设置.Settings文件
是否有办法在运行时在Settings.Settings文件中创建新设置 例如,我想从一个类函数写入设置文件,然后从另一个类函数读取该值。不,我不想传递这些值C# Visual Studio设置.Settings文件,c#,visual-studio,settings.settings,C#,Visual Studio,Settings.settings,是否有办法在运行时在Settings.Settings文件中创建新设置 例如,我想从一个类函数写入设置文件,然后从另一个类函数读取该值。不,我不想传递这些值 我知道如何从Settings.Settings文件中获取值 (值=Properties.Settings.Default.XXX) 我知道如何更新现有值 (Properties.Settings.Default.XXX=newValue;Properties.Settings.Default.Save()) 我想知道如何在运行时将“名称
- 我知道如何从Settings.Settings文件中获取值 (值=Properties.Settings.Default.XXX)
- 我知道如何更新现有值 (Properties.Settings.Default.XXX=newValue;Properties.Settings.Default.Save())
Age [int] 30.
隐藏的代码生成了:
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("30")]
public int Age {
get {
return ((int)(this["Age"]));
}
set {
this["Age"] = value;
}
}
(代码生成是使用强类型设置的原因)
我不确定你是否能在运行时实现同样的效果。您必须生成代码并动态地将其反馈给JIT编译器或类似的东西。或者,在我对环境的有限理解中,可能还有另一种我不知道的方式
建议/解决办法
我建议想出一个替代的/更简单的方法,而不是跳圈。例如,将一个设置为可序列化的集合类型,以便它可以存储多个值
例如,您可以在一个设置下存储多个年龄:
Ages [System.Collections.ArrayList] {add multiple values programatically}
您可能会使用C代码来管理它,如:
System.Collections.ArrayList list = new System.Collections.ArrayList();
list.Add("1");
list.Add("30");
Properties.Settings.Default.Ages = list;
Properties.Settings.Default.Save();
是的,但是我需要在我的Settings.Settings文件中添加一个名为Age的预定义设置,对吗?您真正想做什么?就让一个方法告诉另一个?让一个方法告诉另一件事,但有一个未指定的时间延迟?在运行时保存数据,以便以后可以读取,即使程序退出后也是如此?@apollodude217:是的,我想保存数据,但要保存到Settings.Settings文件中。我想读取和写入设置文件中的字段。我不想在函数之间传递值