Gdzie jest prawidłowe/niepoprawne stosowanie EnableQueryAttribute od stycznia 2015?Gdzie stosuje się WebAPI 2.2 OData v4 [EnableQuery]?
Dokument powiązany poniżej:
Says:
Sieć [EnableQuery] atrybut umożliwia klientom zmodyfikować kwerendę, używając opcji zapytań takich jak $ filter, $ rodzaju, i $ strona. Aby uzyskać więcej informacji, zobacz Wsparcie opcji zapytań OData.
Poniższy dokument powiązany:
http://www.asp.net/web-api/overview/odata-support-in-aspnet-web-api/supporting-odata-query-options
Says:
Sposób EnableQuerySupport umożliwia opcje zapytań globalnie dla jakiegokolwiek działania kontrolera, która zwraca typ IQueryable.
Ale ten dokument za OData 4 na WebAPI 2.2 postawił go na działania powrocie IHttpActionResult:
[ODataRoutePrefix("Teams")]
public class TeamsEntitySetController : ODataController
{
private readonly LeageContext _leage = new LeageContext();
[EnableQuery]
[ODataRoute]
public IHttpActionResult GetFeed()
{
return Ok(_leage.Teams);
}
[ODataRoute("({id})")]
[EnableQuery]
public IHttpActionResult GetEntity(int id)
{
return Ok(SingleResult.Create<Team>(_leage.Teams.Where(t => t.Id == id)));
}
}
ja wariuję, próbując znaleźć się na bieżąco, dokładne i spójna dokumentacja na temat OData v4/WebApi 2.2.
Co jest poprawne dzisiaj?