Asp.net mvc 如何从asp mvc 5请求中获取POST数据
我和mvc5一起工作。我使用小部件将图像上传到云并调用事件。成功后,我需要将一些信息写入数据库。第一行代码中的数据Asp.net mvc 如何从asp mvc 5请求中获取POST数据,asp.net-mvc,post,asp.net-mvc-5,Asp.net Mvc,Post,Asp.net Mvc 5,我和mvc5一起工作。我使用小部件将图像上传到云并调用事件。成功后,我需要将一些信息写入数据库。第一行代码中的数据 $(document).on('cloudinarywidgetsuccess', function (e, data /*this data I need in database*/) { $.ajax({ url: "/Cabinet/UploadImageCallback", type: "POST", data: da
$(document).on('cloudinarywidgetsuccess', function (e, data /*this data I need in database*/) {
$.ajax({
url: "/Cabinet/UploadImageCallback",
type: "POST",
data: data,
success: function (data) {
if (data.status == "success") {
console.log(data);
} else {
console.log("db error");
console.log(data);
}
},
error: function (data) {
console.log("An error has occured!!!");
console.log(data);
}
});
});
我想以json格式获取控制器中的数据。如果我以这种方式发送到.php,我可以通过这种方式访问数据
$\u POST['KEY']
。如何在MVC5中获得类似的功能?您可以使用模型作为参数;大多数情况下,ASP.NETMVC的默认ModelBinder可以映射到您的模型
$.ajax({
url: "@Url.Action("UploadImageCallback", "Cabinet")", // If you want strongly-typed URL
contentType: "application/json; charset=utf-8",
method: "POST",
data: JSON.stringify(data)
...
});
public class CustomerModel
{
public string FirstName { get; set; }
public string LastName { get; set; }
}
[HttpPost]
public ActionResult UploadImageCallback(CustomerModel model)
{
// Do something
}
数据
看起来怎么样?什么结构?创建一个具有相同结构的类,并将其用作参数。发布数据时,模型绑定器将发布的数据映射到该类的对象,您可以访问该对象。@Shyju谢谢,已解决。我已经阅读了有关模型绑定器的内容。因此,如果您需要一些字段,您可以编写下一个字段:public ActionResult UploadImageCallback(string field1,string field3)
。Model binder在可用数据源中自动搜索与操作参数同名的json变量(POST、GET、SESSION-无所谓)。第一个名称相同,第二个绑定器尝试将字符串值转换为参数类型,如果两个条件都为true,则绑定器将值发送到操作。