我已經經歷了幾個與此有關的問題,到目前爲止,他們都沒有解決我的問題。我將與DataGrid中選定行相關的數據發送到使用ajax的服務器上的操作。 JavaScript代碼如下所示:發送數據到MVC Action通過jQuery ajax,參數爲null
function addSelected() {
var grid = $("#optionsGrid").dxDataGrid("instance");
var gridData = grid.getSelectedRowsData();
$.ajax({
type: "POST",
url: "/api/Options/AddRange",
contentType: "application/json; charset=utf-8",
data: JSON.stringify({ data: gridData })
});
}
和服務器上的動作(現在):
[HttpPost("api/[controller]/[action]")]
public async Task<IActionResult> AddRange(string data)
{
return Ok();
}
我已經在瀏覽器中和值的GridData檢查它肯定是有數據填充我想在被髮送到服務器之前,並且該操作被命中,但'data'參數始終爲空。我也嘗試在參數上放置[FromBody]屬性,但它沒有改變它。無論我命名數據或者是否將其串化,參數都爲空。
將數據類型更改爲動態也沒有幫助,它仍然爲空。需要發送的數據在檢查時也包含在請求主體中。
您是否檢查過數據是在請求中發送的?換句話說,'gridData'是否有價值? –
我建議你使用提琴手或任何類似的工具,並看到在行動確切地是什麼被髮送到服務器 – xrodas
[ASP.NET核心MVC:如何獲得未綁定到一個字符串的原始JSON?]( https://stackoverflow.com/questions/31952002/asp-net-core-mvc-how-to-get-raw-json-bound-to-a-string-without-a-type) – Igor