【发布时间】:2017-05-16 21:34:13
【问题描述】:
我收到以下异常:
Cannot create an EDM model as the action 'Get' on controller 'Accounts' has a return type 'System.Web.Http.IHttpActionResult' that does not implement IEnumerable<T>.
尝试查询我的端点时:
http://localhost:8267/api/accounts
正在做这项工作的 AccountsController:
public async Task<IHttpActionResult> Get(ODataQueryOptions options)
{
var query = options.Request.RequestUri.PathAndQuery;
var client = new HttpClient();
var crmEndPoint = @"HTTPS://MYCRMORG.COM/API/DATA/V8.1/";
HttpResponseMessage response = await client.GetAsync(crmEndPoint+query);
object result;
if (response.IsSuccessStatusCode)
{
result = await response.Content.ReadAsAsync<object>();
return Ok(result);
}
return NotFound();
}
我做错了什么?如何简单地将 PathAndQuery 添加到我的 crmEndPoint 并返回结果?
【问题讨论】:
-
OData 操作方法不应该使用
IQueryable<T>作为返回类型吗?
标签: c# .net asp.net-web-api2 odata dynamics-crm-2016