Blueimp 文件上传在提交时将 JSON 对象发送到控制器
本文关键字:对象 JSON 控制器 文件 提交 Blueimp | 更新日期: 2023-09-27 18:30:31
这是我在这里的第一个问题,所以请温柔一点...我有一个 cshtml(ASP.NET MVC 5)页面,我想在其中将文档上传到我已经存储到 json 中的某些行(在页面上的 dataTable 中)。json 如下所示:
杰森:
var jsonDataIds = [
{"Id":"9f835451-14ba-e511-a63e-643150188f7f",.. more data},
{"Id":"a0835451-14ba-e511-a63e-643150188f7f",.. more data},
{"Id":"a1835451-14ba-e511-a63e-643150188f7f",.. more data}];
我正在使用 blueimp 文件上传来处理文件上传。
以下是初始化我页面中元素的脚本:
Javascript:
$("#inFile").fileupload({
url: 'attachFile',
dataType: 'json',
formData: {ecId:jsonDataIds,usrId:"@User.GetId()"},
add: function(e, data) {
fileData = data;
},
done: function(event, data) {
alert(data.message);
},
fail: function(event, data) {
alert("Error uploading the file.");
}
});
$("#btnUpload").on('click', function() {
if(fileData){
fileData.submit();
}
});
当我签入控制器attachFile
时,收到了usrId
,收到了文件,但没有收到 ID。
我认为可能存在一个限制,即您只能发送字符串而不能发送 json 对象。
控制器:(部分)
public ActionResult attachFile(List<MyModel> ecId, string modUsrId)
// modUsrId is ok, ecId is NULL
{
for (int i = 0; i < Request.Files.Count; i++)
// Request.Files.Count is ok
"
Issue"已通过将 json 对象作为字符串发送,然后在控制器端序列化来修复。