我正在使用mvc5。我使用小部件将图像上传到云端并调用事件。成功后我需要向数据库写一些信息。第一行代码中的数据。
$(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,我可以通过这种方式$_POST['KEY']
访问数据。如何在MVC5中获得类似的功能?
答案 0 :(得分:2)
您可以使用模型作为参数;大部分时间ASP.Net MVC的Default 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
}