オープンソースまたは有料の MVC3 アプリをダウンロードするたびに、アセンブリの競合が発生します。つまり、アセンブリが見つからない、バージョンが間違っているなどです。したがって、より一般的な質問をする必要があると思います。
典型的なプロジェクトでは、References というフォルダーがあり、すべてのアセンブリがそのフォルダーにあるように見え、バージョン番号や [ローカルにコピー] オプションなどがあります。
ただし、そのフォルダー内の 10 ~ 20 の参照のうち、web.config で見つかるのはごくわずかです。
私はweb.configにあるこの厄介な混乱の最新のケースです:
<compilation debug="false" targetFramework="4.0">
<assemblies>
<add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
</assemblies>
</compilation>
プロジェクトが System.Web.Helpers, Version=1.0.0.0 を読み込もうとしているというエラーが表示されます - 見つかりません。
References フォルダーで、参照されている System.Web.Helpers はバージョン 2.0.0 であり、グレー表示されているため、このバージョン番号を変更することはできません。特定のバージョンに変更しても何も変わりません。
質問:
Web.config に 4 つの参照があるのはなぜですか? 参照フォルダーだけではないのはなぜですか?
References プロジェクト フォルダーの下に表示されるアセンブリ タグがないか、またはすべての参照ではなく、web.configで部分的な数のアセンブリ タグが見つかることがよくあるのはなぜですか?
ありがとう、