要在Ajax中将包含其他数据的对象数组传递给C#控制器,可以采用以下步骤:
var data = [
{ name: "John", age: 25 },
{ name: "Jane", age: 30 },
{ name: "Bob", age: 35 }
];
JSON.stringify()
将JavaScript对象数组转换为JSON字符串。例如:var jsonData = JSON.stringify(data);
$.ajax({
url: '/ControllerName/ActionName',
type: 'POST',
data: { jsonData: jsonData },
success: function(response) {
// 处理响应数据
},
error: function(xhr, status, error) {
// 处理错误
}
});
[HttpPost]
public ActionResult ActionName(string jsonData)
{
// 将JSON字符串转换为对象数组
var data = JsonConvert.DeserializeObject>(jsonData);
// 处理数据
// 返回响应
return Json(new { success = true });
}
注意:在上述代码中,CustomObject
是自定义的类,用于表示包含其他数据的对象。你需要根据实际情况来定义并使用对应的类。另外,需要在C#控制器中引用Newtonsoft.Json
命名空间,以使用JsonConvert
类进行JSON序列化和反序列化操作。