我的数据库中有两个要通过Web API填充的表:
Orders
________
OrderID
OrderDate
OrderStatusID
和
OrderItems
___________
OrderID
ItemID
ItemNote
ItemSortOrder
下面是控制器中用于将Order发布到数据库的方法,该方法可以正常工作,我之前对其进行了单元测试。
[ResponseType(typeof(myClass.Order))]
[HttpPost]
public IHttpActionResult PostNewOrder(myClass.Order ord1)
{
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
using (MyContext ctx = new MyContext())
{
ctx.Orders.Add(ord1);
ctx.SaveChanges();
return CreatedAtRoute("DefaultApi", new { id = ord1.OrderID }, ord1);
}
}
我的问题是-如何从数据库中返回新插入订单的OrderID? OrderID字段是数据库中的标识字段
最佳答案
无需添加任何新代码。
一旦调用ctx.SaveChanges();
,对象ord1
将在属性OrderID
中具有新的ID。
关于entity-framework - 发布到数据库时如何从Web API返回标识值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40179084/