我得到了这个javascript数组:
formatData = {
title: title,
start: startFormat,
end: endFormat
};
我想将formatData发送给C#控制器的一个方法(并将其作为一个数组接收,以post到数据库):
//HomeController.cs
public ActionResult setReservation()
{
Database db = new Database();
db.setReservations(reservation);
return View();
}
我尝试用下面的AJAX代码发送javascript数组:
$.ajax({
url: '/Controller/HomeController',
type: 'POST',
contentType: 'application/json',
data: JSON.stringify({
formatData: formatData
}),
});
但没有成功。浏览器"network“选项卡显示404。我做错了什么?如何从服务器端c#控制器中的客户端javascript捕获类似于C#数组的数组?如何将AJAX post附加到c#
控制器中的setReservation
方法?
在此之前,非常感谢您。
编辑: formatData应传递给控制器(HomeController.cs)。在控制器中,formData(标题、开始、结束)中的数据必须传递给另一个类(数据库)的对象(Db)的方法(SetReservations),在该方法中,数据将被注入到sql查询字符串中。
发布于 2018-06-04 04:03:33
首先,来自AJAX方法的URL是错误的。尝试如下所示:
$.ajax({
url: '/Home/SetReservation',
type: 'POST',
contentType: 'application/json',
data: JSON.stringify({
formatData: formatData
}),
});
然后,在控制器中,您需要将列表作为要使用的操作的参数。另外,将操作标记为HttpPost
[HttpPost]
public ActionResult SetReservation([FromBody]Reservation reservation)
{
Database db = new Database();
db.setReservation(reservation);
return View(); // you might want to redirect to another view instead
}
https://stackoverflow.com/questions/50670450
复制相似问题