問題はMVC4とEF5にアップグレードされたプロジェクトのアセンブリのバージョン間の競合を解決する方法ですか?同じ依存アセンブリの異なるバージョン間で競合が見つかりました.MVC3 - > MVC4/EF4 - > EF5
問題は、私のコントローラとモデルにSystem.Data.Objectsを含めることができますが、今は自分のビューになっていることが明らかです。私は私のプロジェクトはMVC 3
Entity Frameworkのからアップグレードされた、MVC 4を使用しています
は、バージョン5
私はSystem.Data.ObjectsからObjectContextを使用することができ、コントローラを持っています。
私の使用: using System.Data.Objects; using System.Data.Entity;
私はビューフォームSystem.Data.Objectsで使用を含めるしようとすると、私が手:
CS0234:型または名前空間名「オブジェクト」の名前空間に存在しない「System.Data」(あなたは、アセンブリ参照が不足している)
を私は、.NET 4.5
マイビルド表示し、このメッセージをターゲットにしています:? C:\ WINDOWS \ Microsoft.NET \ Frameworkの\のv4.0.30319の\のMicrosoft.Common.targetsを( 1561,5):警告MSB3247:同じ依存アセンブリの異なるバージョン間で競合が見つかりました。
私はあなたの問題が何であるかは完全にはわかりませんが、私の最初の質問は、とにかくビューからobjectcontextとのやりとりを避けることができると思いますか?これは一般的には悪い考えであり、mvcパターンではあなたのビューが "ダム"になるというルールに違反します。あなたのビューに特定のロジックを表示する以外の何かを避ける必要があります。私はあなたの問題をよりよく理解できるように、あなたのビュー(またはその一部)を投稿できますか? – theMothaShip
これは、私がビューで行うつもりです:@ ObjectContext.GetObjectType(item.TimelineEntry.Document.GetType())。Name.ToString(); –
これはおそらく、プロジェクトで参照している他のアセンブリがエンティティフレームワークの別のバージョンを参照していて、ビルド画面にメッセージが表示される理由です。アプリケーションが1つのプロジェクトファイルだけであるか、同じソリューション内に複数のプロジェクトが存在し、エンティティフレームワークをすべて参照する場合とそうでない場合がありますか? – theMothaShip