我想在我的VB6應用程序中使用的C#Com可見DLL中使用EF6,但遇到錯誤。注意我沒有使用app.config,而是從VB6程序傳入連接字符串。找不到實體框架提供程序 - 從VB6中調用C#Com DLL
在C#代碼中,我訪問DBContext如下;
private static MyDataEntities CreateDb()
{
return new MyDataEntities(EFConnectionString);
}
EFConnectionString是
"metadata=res://*/vivModel.csdl|res://*/vivModel.ssdl|res://*/vivModel.msl;provider=System.Data.SqlClient;provider connection string='data source=MYPC\SQL2008R2;initial catalog=MyDatabase;user id=sa;password=mypassword;MultipleActiveResultSets=True;App=EntityFramework'"
該錯誤消息是
[[架構指定是無效的。錯誤: vivModel.ssdl(2,2):錯誤0152:找不到具有不變名稱「System.Data.SqlClient」的ADO.NET提供程序的實體框架提供程序。確保提供程序在應用程序配置文件的'entityFramework'部分中註冊。有關更多信息,請參見http://go.microsoft.com/fwlink/?LinkId=260882。]]