【发布时间】:2013-06-27 00:13:34
【问题描述】:
我正在使用 WebAPI oData。要求是更新实体的 Navigation 属性。
public class Question
{
public int QuestionId { get; set; }
public string QuestionTitle { get; set; }
public string QuestionBody { get; set; }
public List<Response> Responses { get; set; } //navigation property
}
public class Response
{
public string ResponseId { get; set; }
public int QuestionId { get; set; } //fk
public string ResponseBody { get; set; }
}
现在,如果我使用以下链接来获取它在 oData Webapi 中的响应
GET - /odata/questions(1)/responses ----成功。 在控制器中,我添加了一个操作来处理这个请求:
public IQueryable<Response> GetResponses([FromODataUri] Guid key)
{
//
}
POST - /odata/questions(1)/responses ----这不起作用;错误 消息是:此服务不支持“~/entityset/key/navigation”形式的 OData 请求
我在控制器中添加的方法是:
public List<Responses> CreateResponses([FromODataUri] Guid key, List<Response> responses)
{
//
}
如何支持在 oData WebAPI 中添加/更新导航属性
【问题讨论】:
标签: odata asp.net-web-api-routing