我正在構建一個 API 來生成發票號碼。
我有以下InvItem課程
public class InvItem
{
public string ItemCode;
public double Quantity;
public double SaleValue;
}
我有以下控制器方法
[Route("api/InvoiceMaster/GetInvoiceNum")]
[HttpGet]
public IActionResult GetInvoiceNum(
string xDateTime,
string BuyerName,
double TotalBillAmount,
InvItem[] items
)
{
...
var invItems = new List<InvItem>();
invItems.AddRange(items);
...
return Ok();
}
發票可以有一項或多項。現在我想使用GET請求從郵遞員(或任何其他應用程式)呼叫該方法。
我已經使用POST請求和從請求正文中讀取引數構建了該方法。但這里的要求是嚴格獲取請求。
我嘗試了以下 url,但無法獲取控制器操作方法“GetInvoiceNum”中專案的值
https://localhost:44365/api/InvoiceMaster/GetInvoiceNum?xDateTime=2020-01-01 12:00:00&BuyerName=elon&TotalBillAmount=1519&items[0].ItemCode=001897&items[0].Quantity=1&items[0].SaleValue=19&items[1].ItemCode=002899&items[1].Quantity=1&items[1].SaleValue=1500
如何將這個物件陣列傳遞給 api?
uj5u.com熱心網友回復:
您必須從 [FromQuery] 添加
public IActionResult GetInvoiceNum(
[FromQuery] string xDateTime,
[FromQuery] string BuyerName,
[FromQuery] double TotalBillAmount,
[FromQuery] InvItem[] items
)
并通過添加 getter/setter 將欄位轉換為屬性
public class InvItem
{
public string ItemCode { get; set; }
public double Quantity { get; set; }
public double SaleValue { get; set; }
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/455811.html
標籤:C# 视觉工作室 asp.net 核心 asp.net-web-api
上一篇:如何找到所有TreeNode?
