2016-05-12 40 views
0

我有一個我想通過NuGet提供的類庫。它依賴於Microsoft.AspNet.Mvc。我的書庫與版本> 4.0兼容,我在我的.nuspec文件中列出了這些版本。如何提供可以與多個版本的依賴關係工作的NuGet包

<dependencies> 
    <dependency id="Microsoft.AspNet.Mvc" version="4.0" /> 
</dependencies> 

發展我的項目,我必須安裝Microsoft.AspNet.Mvc,我通過的NuGet做到了。

Install-Package Microsoft.AspNet.Mvc 

此放倒版本5.2.3.0這是直到我發表我的NuGet包,並嘗試在安裝有版本4.0.0.1一個應用程序中使用它的問題。我得到以下錯誤: -

Error 1 Assembly 'xxxxx, Version=0.0.2.22155, Culture=neutral, PublicKeyToken=null' uses 'System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' which has a higher version than referenced assembly 'System.Web.Mvc, Version=4.0.0.1, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 

如何建立一個NuGet包,將與Microsoft.AspNet.Mvc,我在.nuspec文件規定所有版本?

回答

0

nuget 3.4發生了突變。確保你至少使用v3.4。你可以通過在命令行上運行「where nuget」來實現。 根據v3.4,您的依賴版本會告訴nuget使用Microsoft.AspNet.Mvc的任何大於或等於v4.0的版本。 所以,是的,你說得對。 你可以在http://docs.nuget.org/Create/Versioning

找到更多關於版本的信息
相關問題