我想將一個ID數組傳遞給控制器。本來我是將每個ID查詢字符串,像這樣:將數組傳遞給MVC控制器
http://localhost:4000/customers/active?customerId=1&customerId=2&customerId=3
然後在控制器端我會接受陣列像這樣的方法:
GetCustomers([FromQuery] int[] ids)
{
...
}
這是運作良好但是有幾種情況,數組中有太多的customerIds
,查詢字符串變得太長,所以我不得不修改查詢傳遞給它的方式:
http://localhost:4000/customers/active?customerIds=1,2,3
我得到的溶液通過改變GetCustomers
PARAMS接受字符串而不是一個int陣列工作,然後(使用.Split(',')
)
感覺好像它是清潔器傳遞一個陣列解析的customerIds
出在控制器直接而不是必須修改服務器端的字符串。有沒有辦法通過customerIds
現在通過的方式來實現?
https://stackoverflow.com /問題/ 37768245/web的API傳遞陣列-的-整數字句法/ 37768858#3776 8858 – Nkosi
[模型綁定逗號分隔的查詢字符串參數](https://stackoverflow.com/q/9584573/3110834) –
動作是POST還是GET? – Nkosi