在不使用JS FormData的情况下将文件上传到ASP.NET MVC控制器操作,可以通过以下步骤实现:
<input type="file" id="fileInput" />
var fileInput = document.getElementById('fileInput');
var file = fileInput.files[0];
var reader = new FileReader();
reader.onload = function(e) {
var base64Data = e.target.result;
// 将base64Data发送给后端
};
reader.readAsDataURL(file);
[HttpPost]
public ActionResult UploadFile(string base64Data)
{
byte[] fileData = Convert.FromBase64String(base64Data);
// 处理文件数据
return View();
}
[HttpPost]
public ActionResult UploadFile(string base64Data)
{
byte[] fileData = Convert.FromBase64String(base64Data);
string filePath = "path/to/save/file.ext";
using (FileStream fs = new FileStream(filePath, FileMode.Create))
{
fs.Write(fileData, 0, fileData.Length);
}
// 文件上传成功
return View();
}
需要注意的是,这种方法适用于小文件的上传,如果要上传大文件,建议使用分片上传的方式,以提高上传效率和稳定性。
推荐的腾讯云相关产品:腾讯云对象存储(COS)
领取专属 10元无门槛券
手把手带您无忧上云