PageResultを返すODataControllerがあります。
APIの例:
public PageResult<Customer> Get(ODataQueryOptions options) {
// cut some stuff out...
PageResult<Customer> result = new PageResult<Customer>(
searchResults as IEnumerable<Customer>,
Request.GetNextPageLink(),
Request.GetInlineCount());
return result;
これをデバッグすると、問題がないようで、PageResultクラスが正しく構築されて返されます。Web側で..
Webの例
using (var client = new HttpClient()) {
client.BaseAddress = new Uri(testURL);
string searchUrl = "api/customer?$top=1&$skip=0";
client.DefaultRequestHeaders.Accept.Add(MediaTypeWithQualityHeaderValue.Parse("application/json;odata=verbose"));
HttpResponseMessage response = client.GetAsync(searchUrl).Result;
応答はStatusCode406であり、コンテンツが受け入れられなかったことを示す理由フレーズが含まれています。これは、新しいMediaTypeWithQualityHeaderValue( "application / json")を定義した場合にも行われます。
ビューに渡す前にコントローラーでこのApiを正常に使用するには、何を変更する必要がありますか?