连接字符串在web.config

时间:2015-08-10 16:35:06

标签: asp.net asp.net-mvc

我用WebAPI创建了一个MVC项目。我创建了一个Controller(从ApiController派生)并添加了以下行

string connstring = System.Configuration.ConfigurationManager.ConnectionStrings["isrOAK"].ToString();

并抛出一个空异常,"对象引用未设置为对象的实例"。

但是,有一个HomeController(派生自Controller),它自动添加到项目中。连接字符串有效。

知道为什么以及如何让它在派生的Api控制器上工作?

更新:我正在使用UNIT TEST项目来测试WebAPI项目。我从单元测试方法调用HomeController Index(),并没有抛出相同的异常。单元测试项目需要什么来使get连接字符串工作?

2 个答案:

答案 0 :(得分:2)

System.Configuration.ConfigurationManager.ConnectionStrings [" isrOAK"]返回一个ConnectionStringSettings对象。使用.ConnectionString获取实际的连接字符串。

string connstring = System.Configuration.ConfigurationManager.ConnectionStrings["isrOAK"].ConnectionString;

答案 1 :(得分:0)

访问连接字符串:

-

并在web.config文件中添加密钥,如下所示:

var conifg = System.Configuration.ConfigurationManager.ConnectionStrings["DefaultConnection"];