TLDR: Có
NuGet sử dụng ứng dụng phân cấp các nguồn gói bắt đầu bằng NuGet.config ở cấp Hồ sơ người dùng Windows của bạn, sau đó áp dụng cấu hình ngày càng chi tiết hơn bắt đầu từ gốc của đường dẫn tệp chứa giải pháp của bạn, cuối cùng kết thúc bằng thư mục chứa của bạn tệp giải pháp.
Vì vậy, đây là những gì tôi đã tìm ra - nhờ một Twitterer hữu ích chỉ tôi đến tài liệu này:
https://docs.nuget.org/consume/nuget-config-file
Khi bạn chỉnh sửa các nguồn gói NuGet trong Tools > NuGet Package Manager > Package Manager Settings: Package Sources
tùy chọn của Visual Studio , nó sẽ áp dụng những thay đổi đó theo mặc định cho tệp NuGet.config được tìm thấy trong %APPDATA%\NuGet
thư mục của bạn . Để ghi đè các cài đặt này trên cơ sở từng giải pháp (hoặc theo nhóm giải pháp), bạn cần thêm tệp NuGet.config được đặt chiến lược ở đâu đó dọc theo đường dẫn của giải pháp hoặc các giải pháp của bạn.
Tất cả sẽ trở nên rõ ràng nếu bạn đọc tài liệu NuGet, giải pháp tôi cung cấp bên dưới sẽ nhanh chóng cho phép bạn chỉ định cấu hình cho một giải pháp Visual Studio duy nhất:
- Điều hướng đến% APPDATA% \ NuGet và lấy một bản sao của NuGet.config
- Đổ một bản sao vào thư mục gốc của giải pháp của bạn - tức là nơi Application.sln tồn tại.
- Ghi đè các giá trị mặc định được áp dụng cho hồ sơ người dùng của bạn bằng cách chỉnh sửa bản sao để chỉ chứa các nguồn gói NuGet có liên quan đến giải pháp này - ví dụ: nguồn NuGet riêng chứa các gói độc quyền cho giải pháp này, nhưng không nên áp dụng cho các dự án khác - ví dụ:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageRestore>
<add key="enabled" value="True" />
<add key="automatic" value="True" />
</packageRestore>
<activePackageSource>
<add key="All" value="(Aggregate source)" />
</activePackageSource>
<packageSources>
<clear />
<add key="My Private NuGet Server" value="http://myprivatenuget.com:8080/nuget" />
</packageSources>
<disabledPackageSources>
<add key="Microsoft and .NET" value="true" />
</disabledPackageSources>
</configuration>
Nếu bạn muốn một cấu hình áp dụng cho nhiều giải pháp, hãy đảm bảo tất cả các thư mục giải pháp của bạn đều được chứa trong một thư mục chung và đặt NuGet.config cho các nguồn gói liên quan đến các giải pháp đó trong thư mục chung đó, đảm bảo rằng mọi thư mục giải pháp cho các dự án không Không sử dụng các nguồn gói này không có trong thư mục chung này.