клиент c # для использования OData с поддержкой linq - PullRequest
9 голосов
/ 06 марта 2012

ASP.NET MVC4 Beta представила простой способ создания конечных точек OData с помощью WebAPI.

Итак, имея следующий контроллер:

public class ValuesController : ApiController
{
    // GET /api/values
    public IQueryable<Document> Get()
    {
        return (new[] { 
            new Document() { Info = "a", Title = "qwe1" }, 
            new Document() { Info = "b", Title = "qwe2" }, }).AsQueryable();
    }
}

Я могу запросить данные с помощью URL: http://localhost:44087/api/values?$filter=Title eq 'qwe1'

Существует ли надлежащая библиотека .net, которая может это использовать? Так что я мог бы сделать что-то вроде:

new WebApiClient("http://localhost:44087/api/values")
                    .Get<Document>().Where(x=>x.Title == "qwe1").ToList()

Без указания детали $filter=Title eq 'qwe1' вручную?

1 Ответ

2 голосов
/ 08 марта 2012

Лучшее, что я нашел на данный момент, это netFX HttpEntityClient . Хотя это выглядит довольно хорошо, звучит странно, что я не нашел ничего похожего на MS ..

...