在你認爲這是一個重複的問題之前,好吧......也許,但我沒有在我的問題的任何地方找到有用的信息。不同的實體框架版本問題
我有一個主要的Web應用程序項目,我們稱之爲項目A和子類庫項目,項目B.
兩個項目都必須與.NET框架4目標框架進行編譯,而且項目B已安裝實體框架版本6.1.3。項目A,而不是,有一個較舊的實體框架4.3.1 ...
忘記這個「更新它」選項:相當不可能,時間到期。我在運行時得到的問題是:「
無法加載文件或程序集‘的EntityFramework,版本= 6.0.0.0,文化=中性公鑰= b77a5c561934e089’或它的一個依賴」的錯誤時,項目B請求由項目A.
我試着卸載項目B上的EntityFramework,清理解決方案,重新安裝EntityFramework但問題仍然存在。我嘗試降低項目B中的EntityFramework,但是我避免了一些浪費的問題(edmx xml版本錯誤,tt命名空間生成,元數據麻煩,提供者問題......),並且在「正常」情況下轉回,之後我必須做一個SVN恢復。
然後,我嘗試在項目B的實體框架引用屬性上設置「specific version ='True'」,但錯誤仍然存在。不知道是不是在項目中的AssemblyBinding可能是這個問題的一部分,但是這是在web.config中的配置:
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="EntityFramework" publicKeyToken="b77a5c561934e089" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.4.0.0" newVersion="4.4.0.0" />
</dependentAssembly>
</assemblyBinding>
而且,當我已重新安裝項目EF6.1.3我注意到B,bindingRedirect標記被設置爲oldVersion =「0.0.0.0-6.0.0.0」和newVersion =「6.0.0.0」,但使用該配置,項目A是墜毀的人。
更具體地說,有一個項目C類庫,在這個解決方案中使用了Entity Framework 5,並且顯示了assemblyBinding,它沒有問題......所以,我該怎麼辦?任何建議將不勝感激!