我试图使用Kendo将一个.xlsx文件发送到REST。但我迷路了。
我能打电话给我的服务部门,但我拿不到文件。我想我发错了。
我不需要保存文件。我只需要读取.xlsx文件就可以将数据导入到数据库中。
html (没有表单):
<div>
<input name="files" id="files" type="file" />
<button id="importButton">Import</button>
</div>js:
$("#files").kendoUpload({
async: {
autoUpload: true
},
select: onSelect
});
$("#importButton").kendoButton({
click: onImport
});
function onImport() {
var formData = new FormData();
jQuery.each(jQuery('#files')[0].files, function (i, file) {
formData.append('file-' + i, file);
});
$.ajax({
type: "POST",
url: url,
data: formData,
processData: false,
cache: false,
success: function (result) {
alert("Ok");
},
error: function (result) {
alert("Not Ok");
}
});
}Server-side:
[HttpPost, Route("import")]
public void Import()
{
var streamProvider = new MultipartMemoryStreamProvider();
Request.Content.ReadAsMultipartAsync<MultipartMemoryStreamProvider>(streamProvider).ContinueWith((tsk) =>
{
foreach (HttpContent ctnt in streamProvider.Contents)
{
Stream stream = ctnt.ReadAsStreamAsync().Result;
// do something
}
});
}发布于 2016-02-24 19:37:28
明白了!
$("#files").kendoUpload({
async: {
withCredentials: false,
saveUrl: url,
autoUpload: true
},
select: onSelect
});这个答案帮助了我:Cross domain upload
@Brett是对的,实施kendUpload是正确的。我认为Import按钮应该有魔力,但我只需要使用kendoUpload。
谢谢!!
https://stackoverflow.com/questions/35584645
复制相似问题