2016-05-19 42 views
1

我開始在我的解決方案中使用Nuget在某些項目中安裝Owin和一些其他依賴項。我在閱讀有關的NuGet這裏的app.config文件Nuget在多個項目中創建app.config文件

Why NuGet adds app.config with assemblyBinding to LIBRARY projects during a NuGet package update?

這裏

https://msdn.microsoft.com/en-us/library/7wd6ex19.aspx

現在我知道他們爲什麼要使用,結合特定版本等等...

我遇到的問題是,即我有32個項目的大解決方案。

如果我在項目C中安裝Owin,項目A,B,D,F中會出現一個app.config文件,其中包含以下信息。

<runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <dependentAssembly> 
      <assemblyIdentity name="Microsoft.Owin" 
       publicKeyToken="31bf3856ad364e35" culture="neutral" /> 
      <bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0" /> 
     </dependentAssembly> 
    </assemblyBinding> 
</runtime> 

爲什麼我得到這個?這些項目不使用OWIN。有什麼辦法可以避免這種情況?或者,也許可以手動安裝而不使用nuget?

謝謝。

P.S:我使用VS2015企業

編輯:

,我們有它的如下架構。我有安裝Owin的項目WebApi。該項目是通過項目Connector引用的。該項目連接器和所有參考它有以前的app.config文件。那是對的嗎?爲什麼有必要如果他們不使用OWIN?

EDIT2:

我卸載了所有的Nu​​Get包使用的NuGet我的解決方案包管理器裏面VS2015和這些文件中包含的依賴仍然存在。

+0

是項目A,B,d,F某種程度上依賴C?我嘗試了我自己的解決方案,只有packages.config文件在選定的項目中被修改。 – RokX

+0

@RokX不直接。所有這些項目都會引用另一個項目。但他們沒有直接引用。 – acostela

+0

看起來像VS2015發現一些依賴關係,並將它們添加到其他項目。如果您在不需要它們的項目中手動刪除會如何構建? – RokX

回答

1

我建議信任的NuGet和離開的app.config改變了它(khellang explained why), 但如果它真的惹惱了你,你可以skip applying binding redirects

+0

謝謝!我知道這是一個古老的問題。但我會將此標記爲答案,因爲我們在鏈接中發佈了關於跳過綁定重定向的內容 – acostela

相關問題