2017-05-08 26 views
0

ASP.NET核心項目中的NuGet文件夾,我創建了一個新的ASP.NET核心項目目標是實施完整的.NET 4.6框架。所以基本上我想要的是用新的.csproj格式和新的dotnet工具創建一個ASP.NET Core Web應用程序,但仍然以完整的框架爲目標,因爲我們有很多依賴項無法快速移植到.NET Core。參考DLL從上完整的.NET框架

有一些NuGet包含許多DLL,但是在添加PackageReference之後,它只會將一個DLL複製到Web應用程序的bin文件夾中。其他我需要手動引用的DLL。

例如:

<ItemGroup> <Reference Include="CustomDll"> <HintPath>..\packages\CustomPackage\version\lib\CustomDll.dll</HintPath> </Reference> </ItemGroup>

現在的問題是,隨着新的工具和的NuGet版本有解決路徑下沒有包文件夾。它通常位於我的用戶文件夾下.nuget\packages\...

是否有一個宏可以與新的MSBuild一起使用,以引用全局nuget文件夾或可以更改的設置,以便構建實際上將所有NuGet軟件包複製到解決方案目錄下?

回答

0

它看起來像NuGet包中的DLL直接放在lib文件夾中,而不是lib\net45,這將啓用該情況下的自動工具。 (NuGet包可能已經手動組裝)。

作爲一種變通方法,您可以設置HintPath$(NuGetPackageRoot)the.package.name\1.0.0\lib\the.dll

+0

好像在最新的.NET核心SDK $(NuGetPackageFolders)已被刪除,但$(NuGetPackageRoot)的作品,而不是! – dustinmoris

+1

已更新。它應該一直是'NuGetPackageRoot' –