Return 具有 OData 的实体列表 & Entity Framework
Return a list of entities with OData & Entity Framework
我有一个 OData 方法,我想 return 来自该方法的实体列表。
这是我的代码
public async Task<IHttpActionResult> LoadSpecimenMachinings([FromODataUri] Int32 key)
{
if (!ModelState.IsValid)
return BadRequest(ModelState);
Int32 stage = 1;
string csvSpecimenCodes = "S0,S1,S2";
List<Machining> machinings = null;
var machiningResult = db.LoadSpecimenMachinings(key, stage, csvSpecimenCodes);
machinings = (from machining in machiningResult select machining).ToList();
return Created(machinings);
}
当我在 return Created(machinings);
行中 return 编辑实体列表(机加工是我的 Entity Framework 模型中的一个实体)时,我收到以下错误:
"message":" is not an entity type. Only entity types are supported.",
"type":"System.InvalidOperationException"
据我了解,很遗憾 Created
无法接收实体列表作为参数。
有什么方法可以 return 实体列表和 OData 中创建的 HTTP 代码?
我正在使用 OData V3 和 Entity Framework6.
return Created()
设计为仅 return 单个元素并在您执行插入时使用,此 return 是一个 201 Created
状态代码
你应该使用 return Ok(machinings)
这个 return 一个 200 OK
状态码
请参阅有关响应代码的 OData 规范 http://docs.oasis-open.org/odata/odata/v4.0/errata02/os/complete/part1-protocol/odata-v4.0-errata02-os-part1-protocol-complete.html#_Toc406398250
我有一个 OData 方法,我想 return 来自该方法的实体列表。
这是我的代码
public async Task<IHttpActionResult> LoadSpecimenMachinings([FromODataUri] Int32 key)
{
if (!ModelState.IsValid)
return BadRequest(ModelState);
Int32 stage = 1;
string csvSpecimenCodes = "S0,S1,S2";
List<Machining> machinings = null;
var machiningResult = db.LoadSpecimenMachinings(key, stage, csvSpecimenCodes);
machinings = (from machining in machiningResult select machining).ToList();
return Created(machinings);
}
当我在 return Created(machinings);
行中 return 编辑实体列表(机加工是我的 Entity Framework 模型中的一个实体)时,我收到以下错误:
"message":" is not an entity type. Only entity types are supported.",
"type":"System.InvalidOperationException"
据我了解,很遗憾 Created
无法接收实体列表作为参数。
有什么方法可以 return 实体列表和 OData 中创建的 HTTP 代码?
我正在使用 OData V3 和 Entity Framework6.
return Created()
设计为仅 return 单个元素并在您执行插入时使用,此 return 是一个 201 Created
状态代码
你应该使用 return Ok(machinings)
这个 return 一个 200 OK
状态码
请参阅有关响应代码的 OData 规范 http://docs.oasis-open.org/odata/odata/v4.0/errata02/os/complete/part1-protocol/odata-v4.0-errata02-os-part1-protocol-complete.html#_Toc406398250