2017-01-16 98 views
0

我已经定义:加载数据,并连接到属性

public static string Firstname { get; set; } 
public static string Surname { get; set; } 
public static bool DocBook5 { get; set; } 
public static string Language { get; set; } 

我存储在App.config该信息。

然后我用的是装载并连接:

Firstname = ConfigurationManager.AppSettings["firstname"]; 
Surname = ConfigurationManager.AppSettings["surname"]; 
DocBook5 = Convert.ToBoolean(ConfigurationManager.AppSettings["docbook5"]); 
Language = ConfigurationManager.AppSettings["language"]; 

但是,如果我只是给出一些属性内容为Console.WriteLine,它看起来像属性为空。 GetConfig类的完整代码可以显示there

也许有人知道为什么?

+0

您可以分享您的app.config吗?你的项目是一个控制台应用程序或网络? –

+0

也可以告诉我为什么你需要静态属性? –

+0

您的密钥位于下的节点不在AppSetting下。并且您的代码正在从appsetting部分读取。所以你得到空白结果 –

回答

0

看看你的App.config。 您存储的数据是用户设置而不是appSettings,但是您从appSettings获取了数据。

要么你把所有的appSettings您的数据,或者你定义configSections,在其中添加名称UserSettings。 (使用“GetSection”而不是“ 的AppSettings”)

后来,在代码中,你需要申请的特定部分,并从那里得到的数据。

编辑:让我知道如果你想要的代码示例,以满足您的app.config文件

+0

嗨,Ori,你能提供一个代码示例吗?我尝试了这样:ConfigurationManager.GetSection(“firstname”)。ToString();但那不起作用。 –

+0

您想获得'UserSettings'部分(使用它) –

+0

是的。这将是伟大的:-) –