安裝VS 2015更新3(和nuget 3.4.4)後,我注意到更多依賴項被安裝到我的4.6.1項目中時我導入了一些依賴於.NETStandard 1.4
的東西。Nuget 3.4.4下載用於項目定位的.NET標準1.4庫.NET Framework 4.6.1
由於.NET Framework 4.6.1實現.NET Standard 1.4,爲什麼nuget引入每個System.X
程序集?它不應該知道目標框架已經有了它所需要的嗎?
步驟來重現我看到什麼(困惑):
- VS 2015更新3,升級到的NuGet 3.5 RC1(但你沒有)。
- 新控制檯應用程序針對.NET框架4.6.1
- 安裝,包裝
Microsoft.IdentityModel.Clients.ActiveDirectory
- 注意到它在.NET 1.4標準(其中我的目標框架實現)
- 通知的
System.X
(System.IO
,System.Collections
依賴,System.Linq
等)。這似乎沒有必要,我沒有更新nuget之前發生。
這些額外的依賴關係是什麼?請告訴我們有這個問題的具體軟件包,這可以讓我們在我們這邊確認這個問題。另外,VS2015 Update 3中的最新版本NuGet是3.5版本。請升級到3.5版以檢查此問題是否仍然存在。 –
VS 2015 Update 3安裝了Nuget 3.4.4,而不是3.5。 Nuget 3.5仍在RC中,上面仍然存在這個問題。在安裝VS Update 3之前,在添加Microsoft.IdentityModel.Clients.ActiveDirectory nuget包時,依賴鏈中不包含額外的Core庫。安裝Update 3後,Core庫開始添加到依賴關係鏈中。我安裝了Nuget 3.5 RC並且有同樣的問題。爲什麼在添加.Net Standard 1.4庫以.Net 4.6.1爲目標時,將Core庫作爲依賴包含在內? –
如果沒有人能解釋它,這聽起來應該將它作爲一個問題提交給nuget。我會再給它幾天;也許我錯過了一些東西。 – Kevin