我在ASP.NET Core MVC中遇到模型綁定問題。我有這個端點,當它從Javascript調用時會被點擊,但postData總是爲空。模型在ASP.NET Core中綁定複雜類型的列表
[HttpPost("/somepost")]
public string SomePost([FromBody] PostData postData)
{
return "Got It!";
}
public class PostData
{
public int ID { get; set; }
public string[] ListOrArray { get; set; } // Doesn't matter if this ends up a List or an Array
}
此端點正在從$。點擊功能擊中:
$('img.some-image').click(function() {
array = ['sample data', 'some more'];
data = {
ID: 1,
ListOrArray: array
};
$.ajax({
type: 'POST',
url: '/somepost',
dataType: 'json',
contentType: 'application/json; charset=utf-8',
data: data,
success: function (result) {
console.log('Received: ');
console.log(result);
}
});
});
我猜測,這個問題是模型綁定,但我不知道。我已經看過小寫的JavaScript對象屬性名稱的例子,但這並沒有改變我的任何東西。
我也必須從POST中刪除[ValidateAntiForgeryToken],但我更願意將其添加回來。我猜我必須將該令牌添加到GET請求,以便我可以將其提交給POST ,但我還沒有想出如何做到這一點。儘管如此,我認爲這與我的問題沒有任何關係。
我搜索了答案和例子,但他們都沒有爲我工作。 ASP.NET Core很新,所以沒有太多。我在版本1.1.0。
要添加標記,只包含'__RequestVerificationToken:$( '輸入[名稱= 「__ RequestVerificationToken」]')VAL();'英寸您的數據對象 –