1

私はこの奇妙な問題に直面しており、それが私を狂わせています。Visual Studio 2010 に MVC3 プロジェクトがあり、以前は正常に動作していました。何らかの奇妙な理由で、コントローラーを追加しようとすると例外が発生します。(スクリーンショットを参照)。ビューを追加しようとすると、ダイアログが予告なしに閉じます。

Griffin.MvcContrib を NuGet パッケージとして追加しました - これは正常に動作していました。例外画面 (バージョン 1.1.2.0) に記載されているアセンブリを使用したことはありませんが、最新バージョンの 1.1.2.1

ソリューション内で全文検索を実行しましたが、1.1.2.0 が見つかりません。

キャッシュを空にし、Visual Studio プロジェクト テンプレートを再インストールし、Griffin.MvcContrib への参照を削除し (NuGet 経由でアンインストール)、Bin フォルダーを削除し、マシンを再起動しましたが、これまでのところ何も役に立ちませんでした。:(

私のプロジェクトファイルの参照:

<Reference Include="Griffin.MvcContrib, Version=1.1.2.1, Culture=neutral, processorArchitecture=MSIL">
  <HintPath>..\..\packages\griffin.mvccontrib.1.1.2.1\lib\net40\Griffin.MvcContrib.dll</HintPath>
</Reference>
<Reference Include="Griffin.MvcContrib.Admin, Version=1.0.10.0, Culture=neutral, processorArchitecture=MSIL">
  <HintPath>..\..\packages\Griffin.MvcContrib.Admin.1.0.10\lib\net40\Griffin.MvcContrib.Admin.dll</HintPath>
</Reference>
<Reference Include="Griffin.MvcContrib.SqlServer, Version=1.0.8.0, Culture=neutral, processorArchitecture=MSIL">
  <HintPath>..\..\packages\Griffin.MvcContrib.SqlServer.1.0.8\lib\net40\Griffin.MvcContrib.SqlServer.dll</HintPath>
</Reference>

IDE/プロジェクトを修正する方法について手がかりを得た人はいますか?

更新: 再現手順:

Install-Package Griffin.mvccontrib -Version 1.1.2
Install-Package Griffin.MvcContrib.SqlServer

-- すべてOK

Install-Package Griffin.MvcContrib.Admin

--> Griffin.mvccontrib を強制的に 1.1.2.1 に更新します

--> 添付のスクリーンショットに示すように、例外が発生します

どういうわけか、管理モジュールをインストールすると、mvccontrib が強制的に更新されます。

ここに画像の説明を入力

4

3 に答える 3

0

あなたが検索したことは知っていますが、packages ファイルと web.config を調べてもう一度確認してください - Griffin.MvcContrib 1.1.2.0 への参照を探してください

私の経験では、アセンブリがそのエラーでロードに失敗することは、バージョンの競合を意味することがよくあります。

これが失敗した場合は、メモ帳でプロジェクト定義を確認してみてください。

また、競合するバージョンがインストールされていないことを確認してください。場合によっては、GAC に 1 つのバージョンがあり、別のバージョンの .dll を参照していることがあり、競合が発生する可能性があります。

于 2012-08-27T13:45:37.947 に答える
0

この問題は、Griffin.MvcContrib 1.1.2.0 に対してビルドされた参照にある dll に起因します。そのため、見つけるのが難しくなります。

それを回避できる場合は、Griffin.MvcContrib への参照を削除してみるか (不要な場合)、packages.config ファイルを変更して、1.1.2.1 ではなく MvcContrib の 1.1.2.0 バージョンを参照するようにします。

次に、すべての .csproj ファイルを調べて、1.1.2.1 パスではなく 1.1.2.0 パスへの参照を修正します。

于 2014-01-10T13:57:55.203 に答える
0

一時的な回避策は、ソリューションを閉じて、コントローラーを追加しようとしているプロジェクトを開くことです。競合する参照の問題は修正されませんが、何をしようとしてもやり続けることができます。

于 2014-08-06T16:43:23.197 に答える