我有一個類庫,它有自己的模型和連接到數據庫的連接字符串。獨立,這工作都很好,從數據庫中檢索數據沒有問題。這個庫的想法是在另一個應用程序中創建一個dll和引用。如何在mvc3項目中使用引用dll的模型
在我的情況下,我有一個MVC3的Web應用程序與它自己的模型和connectionstring。我引用了類庫,添加了第二個連接字符串,並構建了整個應用程序。但是,當我運行應用程序並實際調用引用庫中的方法時,我得到一個EntitySqlException,說「'MyTable'無法在當前範圍或上下文中解析。確保所有引用的變量都在範圍內,被加載,並且名稱空間被正確引用。在轉義標識符附近,第1行,第1列。「
我確信,引用庫的模型文件也複製到了MVC項目的bin目錄,我的web.config看起來像這樣:
<configSections>
<section name="DefaultArchitecture" type="DefaultArchitectureConfiguration"/>
</configSections>
<DefaultArchitecture defaultContainerName="defaultContainer" connectionStringName="defaultContainer"/>
<connectionStrings>
<add name="defaultContainer" connectionString="metadata=res://*/MvcModel.csdl|res://*/MvcModel.ssdl|res://*/MvcModel.msl;provider=System.Data.SqlClient;provider connection string="Data Source=cloudaddress;Initial Catalog=main catalog;User ID=user;Password=pass;Encrypt=true;Trusted_Connection=false;trustServerCertificate=true"" providerName="System.Data.EntityClient" />
<add name="secondContainer"
connectionString="metadata=~\bin\libmodel.csdl|
~\bin\libmodel.ssdl|
~\bin\libmodel.msl;
provider=System.Data.SqlClient;
provider connection string="
data source=cloudaddress;
initial catalog=othercatalog;
persist security info=True;
user id=user;
password=pass;
multipleactiveresultsets=True;
App=EntityFramework""
providerName="System.Data.EntityClient" />
如果我改變defaultcontainername到第二個容器......它適用於引用的庫,但當然不再是defaultcontainer。
問題是......我怎樣才能在我的mvc項目中使用這兩種模型,通過使用它自己的模型(和自己的數據庫)引用類庫,而不存在無法解析其中一個實體的問題。
希望我的問題很清楚。如果沒有,請讓我知道,這樣我可以提供更多信息。