2015-04-06 30 views
0

我從Empty模板啓動了Visual Studio Community 2013中的ASP.NET Web應用程序項目,並勾選Web API複選框。我已經單獨安裝了SQL Server 2014 Express,並且已經連接到服務器資源管理器下的我的數據庫。不確定是否有任何相關的。我唯一的連接字符串是LocalSqlServer - 當我運行測試時,爲什麼Web.config不加載?

我試圖使用Web.config中的連接字符串打開我的數據庫的連接:

<configuration> 
    <connectionStrings> 
    <clear /> 
    <add name="DbConnection" connectionString="..."/> 
    </connectionStrings> 
</configuration> 

我已經嘗試訪問幾個方面:

var connStr = System.Configuration.ConfigurationManager.ConnectionStrings["DbConnection"].ToString(); 

var connStr = System.Web.Configuration.WebConfigurationManager.ConnectionStrings["DbConnection"].ConnectionString; 

當我運行一個UnitTest,所有我嘗試吐出一個NullReferenceException。

考慮看看什麼是在ConfigurationManager.ConnectionStrings,所有我覺得是machine.config中的LocalSqlServer:

enter image description here

爲什麼它似乎像Web.config文件時,我測試沒有加載?

+0

Web.config是否位於網站的根目錄? – mason

+0

@mason是的。 –

+0

你是如何運作這個項目的?只需打開VS中的調試按鈕? – mason

回答

1
var connStr = System.Configuration.ConfigurationManager.ConnectionStrings["DbConnection"].ConnectionString; 

請勿使用.ToString()。使用.ConnectionString屬性。另外,您的web.config應位於您的網站的根目錄。


單元測試有自己單獨的配置。您需要一個app.config文件,但內容可能與您在問題中發佈的內容相同。

相關問題