c# - 如何将带有fromdata的json对象发送到mvc控制器
问题描述
我正在向formdata
mvc 控制器发送数据对象。我在控制器中收到了数组,但对象总是丢失。搜索了很多关于它没有找到线索。
我试图发送整个对象或将每个值附加到formdata
但它始终为空。formdata
接受吗?嵌套对象。
我的 jQuery 代码:
function addstudent() {
var form= $("#studentform").valid();
if (form)
{
personfood.details.firstname = $("#firstname").val();
personfood.details.lastname = $("#lastname").val();
personfood.details.imageuploaded = $("#imageupload")[0].files[0];
personfood.details.rememberme = $("#rememberme").is(":checked");
personfood.details.newsletter = $("#newsletter").is(":checked");
personfood.details.gender = $("input[name='gender']").val();
var personfoods = new FormData();
$.each(personfood.details, function (key, value) {
personfoods.append(key, value);
});
$.each(personfood.foodname, function (key, value) {
personfoods.append("foodname["+[key]+"]", value);
});
for (var pair of personfoods.entries()) {
console.log(pair[0] + ', ' + pair[1]);
}
$.ajax({
url: "/Main/addperson",
type: "POST",
processData: false,
cache: false,
contentType: false,
dataType: "json",
data: personfoods,
success: onsucessinsert,
error:onerrorinsert
})
}
我的视图模型
public class personfoods
{
public details details { get; set; }
public List<string> foodname { get; set; }
}
details
模型:
public class details
{
public int id { get; set; }
public string firstname { get; set; }
public string lastname { get; set; }
public string imagename { get; set; }
public string imageshorturl { get; set; }
public string imagefullurl { get; set; }
public bool rememberme {get;set;}
public bool newsletter { get; set; }
public string gender { get; set;}
public HttpPostedFileBase imageuploaded { get; set; }
}
解决方案
我使用 $.each 解决它并将键值对附加到我的表单数据。
$.each(personfood.details, function (key, value) {
personfoods.append("details[" + key + "]",value);
});
推荐阅读
- sql - 如何在多个表中获取日期列的最大日期值
- mongodb - 带有 Heroku 的 MLab:尽管确认了凭据,但获取身份验证失败
- laravel - laravel ck-editor 未在浏览器中加载
- python - SWIG:将其参数从 c++ 修改为 python 的函数
- lex - 如果因为 REJECT 而在 Lex 程序中不存在匹配的规则怎么办?
- ibm-watson - 如何在 Watson Assistant 的整个 multiplied-replies 节点中创建上下文变量?
- java - Java中的数组是否存储数据或指针
- video - 如何自动播放嵌入式谷歌驱动器视频?
- uwp - UWP:加载页面时打开 ProgressRing
- android - 混合版本可能导致运行时崩溃。帮忙找个理由