2016-03-21 3 views
2

4.0.40804.0が参照されるようにすべてのweb.configファイルを変更しました。Razorビューは、Microsoft.AspNet.Mvcバージョン4.0.40804.0にアップグレードした後の警告CS1702を表示します。

は、私はそれはそれらの1(1に不平を言っているだ、System.Web.Mvcの以前のバージョンで構築されている2つの外部アセンブリがあります

<dependentAssembly> 
    <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" /> 
    <bindingRedirect oldVersion="0.0.0.0-4.0.0.1" newVersion="4.0.0.1" /> 
</dependentAssembly>  

私のweb.configファイルにリダイレクト結合アセンブリを持っていますサーバーHTMLヘルパーが含まれています)。彼らは私のコントロール下にないので、それらをアップグレードすることはできません。

バインディングリダイレクトがこれに対して機能しない理由を理解できません。

(更新:私が使用しているVS2015)

答えて

2

私は、次の手順を行っこの問題解決するために:

  1. アップグレードMVCの最新バージョン5.2.3.0
  2. への変更されたすべてのバージョンweb.configの次のようなアセンブリバインディングリダイレクトを確認します。Upgrade MVC4 to MVC5
  3. ASP.NETとWebツールとMicrosoft ASP.NET Webフレームワークとツールを拡張機能と更新でアップグレードする
  4. 変更されました< Project ToolsVersion = "12.0" ... >〜< Project toolsVersion = "14.0" ... > web app .csprojおよびweb app .csproj.userファイルにあります!

System.Web.Mvc 4.0.0.1に固執する場合は、ステップ1と3が必ずしも必要ではないかもしれません。この場合、手順2でmvc4のバージョンに応じてバージョン番号を変更する必要があります。

ステップ2には、Razor dllや他のMVC関連のdllについても言及していません。これらがアップグレードされている場合(System.Web.Razor 3.0など)、これらのdllのバージョン番号もすべてのweb.configファイルで変更する必要があります。

最後に、警告を消した.csprojファイルと.csproj.userファイルのToolsVersionを変更していました。 .csproj.userファイルは、私たちの場合はソース管理でチェックインされていないので、すべてのチームメンバーが独自の.csproj.userファイル用にそれを繰り返さなければならないため、特にが厄介です。

+0

私は、VS2015 Update 3でコアプロジェクトを取得しました。私はそれを治すためにVSを閉じて再開します。 –

関連する問題