Potrzebuję uzyskać z aplikacji .NET (to znaczy nie .NET Core app) listę katalogów, w których NuGet przechowuje swoje pakiety.Jak programowo uzyskać lokalizację folderu pamięci podręcznej nuget?
Domyślnie jest w C:\Users\[YourUsername]\.nuget\packages
, więc opcja jest iteracyjne dla wszystkich użytkowników zakładając, że bieżący użytkownik systemu Windows, który uruchamia proces, ma prawo dostępu do danych innych użytkowników. Co więcej, jeśli ten domyślny katalog zostanie zmieniony przez użytkownika, utknąłem.
Odpowiedź jest here przez
nuget locals packages-cache -list
ale to nie jest kod .NET i wydaje się być przestarzały opcja, zgodnie z odpowiedzią.
Ponadto chciałbym zrozumieć logikę NET Rdzeń Nuget pakietów miejsc, bo widzę jakieś pakiety .NET rdzenia w 3 miejscach:
C:\Program Files\dotnet\shared\Microsoft.NETCore.App
(nie zawierają AspNetCore pakiety)C:\Users\[UserName]\.nuget\packages
(nie zawierają pakietów AspNetCore)C:\Program Files (x86)\Microsoft SDKs\NuGetPackages
(nie zawierają pakietów AspNetCore)
Nie będziemy mieć czas na przetestowanie tego teraz, ale to brzmi dobrze i będą pisać o moim doświadczeniu próbuje to. W międzyczasie sprawdzam to pytanie w odpowiedzi na pytania –