簡體   English   中英

如何以編程方式找到 nuget 包安裝文件夾? (.NET Core - 跨平台)

[英]How can I find nuget package installation folder programmaticaly ? (.NET Core - Cross Platform)

無論如何查找 .nuget 文件夾和所有相關文件夾?

  1. C:\\用戶\\ ... \\.nuget
  2. C:\\Program Files\\dotnet\\shared\\Microsoft.NETCore.App\\1.1.0

但應該以編程方式,跨平台方式,與 .NET Core 兼容

我的問題是找到路徑

  1. mscorelib.dll 和 System.Runtime.dll
  2. 自定義安裝的程序集,如 Microsoft.EntityFrameworkCore.Relational.dll

為了在 .NET Core 中使用 Roslyn,我需要將它們引用為 MetadataReference 列表。

MetadataReference.CreateFromFile(...)

所以我想如果我知道所有 .nuget 目錄。 我可以搜索它們。

您可以使用此NuGet 包以編程方式獲取.nuget文件夾的路徑,如下所示:

ISettings settings = Settings.LoadDefaultSettings(null);
string nugetPath = SettingsUtility.GetGlobalPackagesFolder(settings);

沒有獲取 NuGet 位置的特定方法。 您可以獲得如下所示的用戶個人資料位置。

Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);

並獲取如下所示的 ProgramFiles 位置。

Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86)

通過硬編碼附加剩余的路徑。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM