Ответ 1
Джон Галловей опубликовал PS script, который загружает весь репозиторий. Я использовал его на нескольких машинах, и он отлично работает для меня.
http://weblogs.asp.net/jongalloway/downloading-a-local-nuget-repository-with-powershell
В моем рабочем месте у нас есть темпераментный прокси-сервер, который часто делает окно пакетов nuget непригодным (то же самое верно для командной строки nuget). Я начал копировать пакеты, которые мы чаще всего используем для локального зеркала на сетевом ресурсе, но делать это вручную стало утомительно. Я экспериментировал с использованием powershell, чтобы автоматически загружать пакеты, но, похоже, не может заставить urad odata отображать больше, чем несколько пакетов. Например, выполнив следующий запрос:
$feed = [xml]$webClient.DownloadString("http://feed.nuget.org/ctp2/odata/v1/Packages?$filter=startswith(Title,'O') eq true&$top=100")
Должно возвращать 100 лучших пакетов с заголовком, начинающимся с 'O', но пакеты не возвращаются. Как ни странно, это прекрасно работает с именами пакетов, которые находятся в списке пакетов по умолчанию, нажав http://feed.nuget.org/ctp2/odata/v1/Packages
. Я предполагаю, что происходит какой-то пейджинг, где я только просматриваю первую страницу. Игра с параметрами, которые я, кажется, не могу изменить на следующую страницу...
Кто-нибудь еще пытался это сделать? Кто-нибудь еще заметил таймауты/неудачные запросы с использованием nuget?
Джон Галловей опубликовал PS script, который загружает весь репозиторий. Я использовал его на нескольких машинах, и он отлично работает для меня.
http://weblogs.asp.net/jongalloway/downloading-a-local-nuget-repository-with-powershell
Мое предложение - использовать New-ODataServiceProxy или даже Doug Finke Проект PSOdata
С помощью только прокси-функции вы можете сделать это:
New-ODataServiceProxy http://packages.nuget.org/v1/FeedService.svc/ NuGet
# Chain up calls to AddQueryOption (please excuse my line wrapping):
$NuGet.Packages.AddQueryOption( '$filter',"startswith(Title,'O') eq true"
).AddQueryOption( '$top','3' ) |
Format-Table Id, Version, Authors, Description -Wrap -Auto
Вам нужно быть осторожным при использовании строки в двойных кавычках. Попробуйте сначала оценить URL-адрес или только часть:
PS> "?$filter=startswith(Title,'O') eq true&$top=100"
?=startswith(Title,'O') eq true&=100
PS> "?`$filter=startswith(Title,'O') eq true&`$top=100"
?$filter=startswith(Title,'O') eq true&$top=100
Побег знака доллара с обратным ходом.
Затем я попытался запросить сайт с (надеюсь) правильным URL-адресом, но результат результата не был возвращен. Так что - до сих пор не повезло и что-то не так с сервисом.