1

当我尝试从 app.config 获取参数时收到此错误消息,以下是我的配置文件:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <ConnectionStrings>
    <add name="conStr" ConnectionString="this is connection string" ></add>
  </ConnectionStrings>
</configuration>

在 C# 中,我是这样写的:

string str = ConfigurationManager.ConnectionStrings["conStr"].ConnectionString;
Console.WriteLine(str);

所以谁知道我哪里做错了?

谢谢!

4

2 回答 2

2

大小写不对,应该是connectionStrings小写c
如果您查看InnerException您得到的异常的属性,您会看到它说:“无法识别的配置部分 ConnectionStrings。(...第 3 行)”。
要查看内部异常,您可以使用调试器或使用以下代码:

using System;
using System.Configuration;

class Program {
    static void Main(string[] args) {
        try {
            string str = ConfigurationManager.ConnectionStrings["conStr"].ConnectionString;
            Console.WriteLine(str);
        } catch (ConfigurationErrorsException exc) {
            Console.WriteLine(exc.Message);
            if (exc.InnerException != null) {
                Console.WriteLine(exc.InnerException.Message);
            }
        }
    }
}

您的 App.Config 文件应如下所示:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <connectionStrings>
    <add name="conStr" connectionString="this is the connection string" />
  </connectionStrings>
</configuration>

使用这样的配置文件,我没有收到任何错误。如果还是报错,说明你的 App.config 中还有其他问题,你应该分析一下内部异常的内容,找出是什么。

于 2013-06-06T15:10:18.010 回答
0

我认为connectionstrings标签需要以小写c开头:

<connectionStrings>
....
</connectionStrings>
于 2013-06-06T15:12:19.137 回答