我創建了一個啓動基於窗體的GUI的AddIn。 AddIn和Gui在不同的項目中。 Gui連接到一個數據庫並利用EF作爲ORM。Visual Studio 2010添加使用實體框架
當我從VS啓動Gui項目時,它效果很好。當我將該Gui發佈到vs加載項文件夾並運行它時,它工作正常。當我從VS的加載項啓動Gui時,它加載正常,但任何試圖擊中數據庫的內容都會失敗。 EF抱怨元數據文件。
例外:指定的命名 連接或者未在 配置中找到,而不是旨在用於 與EntityClient提供者,或不 有效。
在System.Data.EntityClient.EntityConnection.ChangeConnectionString()
這裏是的app.config配置
<connectionStrings>
<add name="companyEntities" connectionString="metadata=res://*/;provider=System.Data.SqlClient;provider connection string="Data Source=TESTDB;Initial Catalog=company;Persist Security Info=True;User ID=id;Password=password;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient"/>
</connectionStrings>
我能想到的唯一的事情是,「RES: // * /「部分映射不同,當啓動程序集不同時,但我嘗試使用絕對路徑到csdl/msl/ssdl文件沒有任何成功。
從打開配置的加載項啓動Gui有什麼不同?
更新:如果我將connectionString信息添加到devenv.exe.config文件中,那麼Gui應用程序可以工作。所以問題是:配置AddIn/Gui項目的正確方法是什麼,以便Gui不必知道它是如何啓動的(直接或者作爲AddIn) – soslo 2011-02-09 16:36:44