在 C# 中到达 appsettings.config 键返回 null
Reaching appsettings.config keys in C# returning null
我在 .net Framework4 的 appconfig 文件中添加了一个名为 MessageToLog 的键 Windows C# 中的应用程序,如下所示:
<?xml version="1.0"?>
...
...
<appSettings>
...
...
<add key="MessageToLog" value="hello"/>
...
...
</appSettings>
我如何尝试在 C# 中找到他们的关键是:
string message2 = System.Configuration.ConfigurationManager.AppSettings["MessageToLog"];
Console.Writeln(message2);
但是,我在输出中看到空值而不是 Hello。我做错了什么?我应该在哪里寻找错误?
谢谢
确保您的 app.config 已正确命名(称为 "app.config")并且在您的控制台应用程序项目中,而不是其他项目中。
检查此问题的快速方法 - 弄乱您的 app.config 并尝试 运行 控制台应用程序。像这样插入一些字符:
<?xml version="1.0"?>xxx
^^^
尝试 运行 控制台应用程序。它应该因配置错误而失败。如果不是,则您正在编辑的 app.config 不是该项目的一部分。
此外,您是否使用“添加”>“新项目”>“常规”>“应用程序配置文件”添加它?
这可确保存在正确的元素。 (只是想知道您是否手动创建了它。)该文件至少应如下所示:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="MessageToLog" value="hello"/>
</appSettings>
</configuration>
我在 .net Framework4 的 appconfig 文件中添加了一个名为 MessageToLog 的键 Windows C# 中的应用程序,如下所示:
<?xml version="1.0"?>
...
...
<appSettings>
...
...
<add key="MessageToLog" value="hello"/>
...
...
</appSettings>
我如何尝试在 C# 中找到他们的关键是:
string message2 = System.Configuration.ConfigurationManager.AppSettings["MessageToLog"];
Console.Writeln(message2);
但是,我在输出中看到空值而不是 Hello。我做错了什么?我应该在哪里寻找错误? 谢谢
确保您的 app.config 已正确命名(称为 "app.config")并且在您的控制台应用程序项目中,而不是其他项目中。
检查此问题的快速方法 - 弄乱您的 app.config 并尝试 运行 控制台应用程序。像这样插入一些字符:
<?xml version="1.0"?>xxx
^^^
尝试 运行 控制台应用程序。它应该因配置错误而失败。如果不是,则您正在编辑的 app.config 不是该项目的一部分。
此外,您是否使用“添加”>“新项目”>“常规”>“应用程序配置文件”添加它?
这可确保存在正确的元素。 (只是想知道您是否手动创建了它。)该文件至少应如下所示:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="MessageToLog" value="hello"/>
</appSettings>
</configuration>