作為 201 狀態代碼回傳發布到我的 API 后,我試圖在我的 API 中實作這一點:
{
orderId: "4"
}
但相反,我在發布后得到了這個:
{
"orderID": 4,
"identifier": "Udacity",
"customer": "Assassin's Creed",
"items": [
{
"id": 3,
"orderID": 4,
"productId": 5000,
"quantity": 10
}
]
}
這是我在 POST 后回傳的代碼:
[HttpPost]
public async Task<ActionResult<Order>> PostOrder(PostOrderDTO postOrderDto)
{
var order = new Order(postOrderDto.Identifier, postOrderDto.Customer);
var json = JsonConvert.SerializeObject(order);
var content = new StringContent(json, Encoding.UTF8, "application/json");
_context.Order.Add(order);
await _context.SaveChangesAsync();
var basket = await GetBasketItems(postOrderDto.Identifier);
var newOrderId = order.OrderID;
foreach (var item in basket.Items)
{
var orderLine = new OrderLine
{
OrderID = newOrderId,
ProductId = item.ProductId,
Quantity = item.Quantity
};
_context.OrderLine.Add(orderLine);
};
await _context.SaveChangesAsync();
return CreatedAtAction("GetOrder", new { id = order.OrderID }, order);
}
有什么辦法可以做到這一點?我這樣做嗎?
return CreatedAtAction("GetOrder", new { id = order.OrderID });
我上次嘗試的時候沒有用,提前感謝您的幫助
uj5u.com熱心網友回復:
我會使用這段代碼
[HttpPost]
public async Task<ActionResult> PostOrder(PostOrderDTO postOrderDto)
{
.... your code
return Ok( new { id = order.OrderID } );
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/405282.html
標籤:
