我有一個Web項目調用一個庫項目(DataAccess)從數據庫中檢索一些數據。我添加了一個App.config文件(添加 - >新建項目 - >應用程序配置文件)的數據訪問項目,並增加了部分的connectionString像這樣:從app.config獲取ConnectionString
<configuration>
<connectionStrings>
<add name="local"
connectionString="Data Source=.\sql2008;Initial Catalog=myDB;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
</configuration>
在數據訪問項目,我有BuildConnection方法:
internal static SqlConnection BuildConnection()
{
string connectionString = ConfigurationManager.ConnectionStrings["local"].ToString();
return new SqlConnection(connectionString);
}
當我從Web項目調用方法時,它會拋出一個空異常,抱怨「本地」連接字符串不存在。在調試了一段時間後,我將相同的連接字符串添加到Web項目的Web.config中,現在它工作正常。但問題是我想將DataAccess項目從Web項目中分離出來,換句話說,無論是誰調用它,我都希望DataAccess項目使用它自己的app.config文件來。這甚至有可能嗎?任何幫助,將不勝感激。
假設您有MyApp.DataAccess.dll,MyApp.DataAccess.dll.config和MyApp.WebApp.dll,當您從您的Web應用程序訪問您的數據訪問時,您可以讓數據訪問從其中讀取連接字符串自己的配置文件。這是可能的。你需要'ConfigurationManager.OpenExeConfiguration'。 –