我使用 ajax 将上传的文件从 html 视图发送到控制器,但该文件在控制器中被接收为空。
我尝试使用 FormData 但没有任何反应,或者可能我没有正确使用它,当我使用 html.BeginForm() 发送文件时,它在控制器中正确读取,但我不想使用表单,因为它在提交后打开另一个页面
下面是我的控制器
public void Upload_SCN_CA_File(FormCollection formCollection)
{
if (Request != null)
{
HttpPostedFileBase file = Request.Files["UploadedFile"];
if ((file != null) && (file.ContentLength > 0) && !string.IsNullOrEmpty(file.FileName))
{
string fileName = file.FileName;
Debug.WriteLine(fileName);
string fileContentType = file.ContentType;
byte[] fileBytes = new byte[file.ContentLength];
var data = file.InputStream.Read(fileBytes, 0, Convert.ToInt32(file.ContentLength));
}
}
}
下面是 JQuery ajax 调用
$("#upload").on("click",function () {
$.ajax({
type: "POST",
url: "/Order/Upload_SCN_CA_File",
data: {
enctype: 'multipart/form-data'
},
success: function (response) {
if (response.result == false) {
swal("Error", response.message, "error");
}
else {
swal("Success", response.message, "success");
}
}
});
});
下面是我的 html 视图
<form>
<div class="row">
<div class="col">
<input name="UploadedFile" id="upfile" type="file" />
</div>
</div>
<div class="row">
<div class="col">
<div class="btn btn-primary rounded" id="upload" style="margin:8px">Upload</div><br>
</div>
</div>
</form>
我希望文件能够正确发送到控制器,以便我可以正确读取它,但它被接收为空
千巷猫影
莫回无
相关分类