1

MVC1 を参照する DotNetOpenAuth ライブラリに依存する MVC3 アプリがあります。DotNetOpenAuth NuGet パッケージをインストールすると、アセンブリ バインディング リダイレクトが web.config に追加されました。コメントを外しましたが、何も変わりませんでした。

いくつかの検索の後、これの理由は通常タイプミスであることがわかりましたが、これが私に当てはまるとは思えません。タイプミスについて少なくとも十数回構成をチェックしました。

web.config を次のように削除しました。

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
            <dependentAssembly>
                <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
                <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
            </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>

ビルド中に次の警告が表示されます。

Consider app.config remapping of assembly "System.Web.Mvc, Culture=neutral, PublicKeyToken=31bf3856ad364e35" from Version "1.0.0.0" [] to Version "3.0.0.0" [C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET MVC 3\Assemblies\System.Web.Mvc.dll] to solve conflict and get rid of warning.
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(1578,5): warning MSB3247: Found conflicts between different versions of the same dependent assembly.

web.config でさまざまな組み合わせ (たとえば、culture="neutral" 属性を追加するなど) を試しましたが、うまくいきませんでした。助言がありますか?

更新 ~/Views/web.config はこちら

4

1 に答える 1

2

同様の状況で、.NET Framework 4.5 プロジェクトでは、最近、Visual Studio 2013 で次の MSDN 記事を参照しました。

方法: 自動バインド リダイレクトを有効または無効にする

ところで:少なくともVSからビルドを実行している場合は、うまくいきました。代わりに、コマンド ライン スクリプトからビルドを実行しても効果がありませんでした。

于 2014-08-26T19:29:24.173 に答える