Поддерживает ли proget запросы OData для тегов?

Я пытаюсь запросить сервер proget с помощью API Nuget.Core. Этот метод:

using System.IO.Packaging;
public IEnumerable<IPackage> GetAllProgramPackages(string feedUrl)
{
    var repository = PackageRepositoryFactory.Default.CreateRepository(feedUrl);            
    var query = repository.GetPackages();            
    var programPackages = query.Where(p => p.Tags.Contains("ClientPackage"));    
    return programPackages;

}

Должен, насколько я понимаю, возвращать только пакеты, в которых теги содержат "ClientPackage". На самом деле он возвращает весь репозиторий, что нежелательно. Я всегда мог отфильтровать на стороне клиента после возврата запроса, но с парой тысяч пакетов nuget в нашем репозитории это не было бы хорошим вариантом.

Можно ли выполнить запрос OData для тегов к серверу proget и выполнить ли он на стороне сервера?

1 ответ

Да, вы можете отфильтровать любое свойство на substringof совпадать (аналогично Contains() в C#). Просто используйте:

http://proget/nuget/Default/Packages()?$filter=substringof(tags,'ClientPackage')
Другие вопросы по тегам