2013-06-18 2 views
7

自分のプロジェクトの1つにautofacをインストールしましたが、これはプロジェクトAと呼ばれ、ナゲットを使用しているソリューションです。何らかの理由ですべての私のweb.configファイルについては、私は、溶液中の複数のWebアプリケーションとAPIを持って、アセンブリで更新しまったこの1のようにリダイレクト:autofacをインストールすると、すべてのweb.configがアセンブリリダイレクトで更新されるのはなぜですか?

<runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <dependentAssembly> 
      <assemblyIdentity name="Autofac" publicKeyToken="17863af14b0044da" culture="neutral" /> 
      <bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> 
     </dependentAssembly> 
    </assemblyBinding> 
</runtime> 

これは、アセンブリのリダイレクトが何を意味するかを意味するのでしょうか?そして、ソリューションは、これらのweb.configファイルをすべて更新する必要があることをどのように知っていますか?私のWebアプリケーションがプロジェクトAを参照しているからですか?それはnuget機能であるため、

答えて

10

これは、Autofacとは何の関係もありません:自動的にバインディングリダイレクトを追加nuget-1.2 release notes:

から

強い名前のアセンブリ、NuGetでパッケージをインストールしますプロジェクトが のバインディングリダイレクトを設定ファイルに追加する必要がある場合を検出して、 の順番でプロジェクトをコンパイルして追加することができます間違いなく

あなたは記事がリリースノートにも言及して組立rederictsが必要な理由についての続きを読むことができます

NuGet versioning Part 3: unification via binding redirects

あなたがMSDNに開始することができ、一般的に組立rederictionについて学ぶ:Redirecting Assembly Versions

0

あなたはVSにチェックすることでこれを避けることができます。

ツール - >オプション - > Nugetパッケージマネージャ - >スキップバインディングリダイレクトを適用する

関連する問題