Kendo Upload中Upload为异步时发送元数据-Metedata为Null



我正在使用Kendo进行异步上传。我传递的元数据如下:

https://docs.telerik.com/kendo-ui/controls/editors/upload/metadata
<body>
<div id="example">
<div>
<div class="demo-section k-content">
<div id="FldUpload" style="width:100%;height:40%;">
<b>Matter ID : </b><span id="spanMatterName"></span><br />
<div><input name="files" id="folders" type="file" multiple /></div>
</div>                
</div>
</div>

$("#folders").kendoUpload({
async: {
saveUrl: baseAddrs + "/" + "DragAndDrop/ChunkSave",
removeUrl: baseAddrs + "/" + "DragAndDrop/remove",
chunkSize: 10530000, //~ 10MB
autoUpload: true,
concurrent: true
},
upload: onUpload,
directory: true,
directoryDrop: true,
});
function onUpload(e) {
e.data = {
EntityID: document.getElementById("spanMatterName").textContent
};
alert(e.data.EntityID); // It has correct value
}
//Codebehind
[HttpPost]
public ActionResult ChunkSave(IEnumerable<HttpPostedFileBase> files, string metaData)
{
//Here metadata is always null
}

为什么元数据为空?我如何将(e.data(的元数据值传递给codeheadPOST方法?

我修复了它。参数名称应该与您在e.data中传递的名称完全相同。在我的情况下,它是EntityID,但我在post方法中声明变量为字符串元数据:

e.data = {
EntityID: document.getElementById("spanMatterName").textContent
};
It should be 
[HttpPost]
public ActionResult ChunkSave(IEnumerable<HttpPostedFileBase> files, string EntityID)
{

}

最新更新