如何使用字符串获取 Properties.Settings.Default?
Posted
技术标签:
【中文标题】如何使用字符串获取 Properties.Settings.Default?【英文标题】:how to get Properties.Settings.Default with a string? 【发布时间】:2014-09-23 11:50:55 【问题描述】:我有一个 Winforms/C# 应用程序,我正在从 xml 配置文件迁移到应用程序设置。我想知道是否可以动态访问应用程序设置(Properties.Settings.Default)。
我的应用程序有 4 种可能的配置以及相关设置,我在逻辑上命名为 name1、name2、name3、name4、server1、server2 等。 而不是为它们分配一个像
这样的值Properties.Settings.Default.name1 = textbox.txt;
我想就它们所属的配置做这样的事情:
class ApplicationSettings
int no;
ApplicationSettings(int no)
this.no = no;
private void save()
Properties.Settings.Default.Properties["name"+no] = "value";
该技术似乎仅适用于 SettingsProperties,如 here 所示。你知道有没有办法做到这一点?
【问题讨论】:
Properties.Settings.Default["name"+no.ToString()] = "value" ?? 好吧,很明显,我没有发现它会起作用! :// 【参考方案1】:您需要使用 [] 运算符并将整数转换为字符串,如下所示:
internal static class ApplicationSettings
//added public static because I didn't see how you planned on invoking save
public static void Save(int no, string value)
//sets the nameX
Properties.Settings.Default["name"+no.ToString()] = value;
//save the settings
Properties.Settings.Default.Save();
用法
ApplicationSettings.Save(1,"somesetting");
【讨论】:
这是怎么回事?以上是关于如何使用字符串获取 Properties.Settings.Default?的主要内容,如果未能解决你的问题,请参考以下文章
Javascript:如何使用字符串数组获取对象属性? [复制]
如何使用 SqlConnectionStringBuilder 从连接字符串中获取数据库名称
如何使用 NamedParameterJDBCTemplate 中的字符串列表来获取结果