gpt4 book ai didi

c# - MVC ASP.NET CORE,上传文件有时上传的文件已损坏/大小为 0 字节

转载 作者:行者123 更新时间:2023-11-30 16:41:32 26 4
gpt4 key购买 nike

所以我尝试在我的 mvc 核心中上传文件并且它有效,但是,有时正在上传的文件可能已损坏或大小为 0 字节。有没有人经历过这样的事情?上传的初始文件大小一点也不大。

谢谢。

public IActionResult UploadCertificateFile(IFormFile UploadCertificate)
{
var parsedContentDisposition =
ContentDispositionHeaderValue.Parse(UploadCertificate.ContentDisposition);
var filename = Path.Combine(_hostingEnvironment.WebRootPath,
"Uploads", parsedContentDisposition.FileName.Trim('"'));
using (var stream = System.IO.File.OpenWrite(filename))
{
UploadCertificate.CopyToAsync(stream);
}
return RedirectToAction("Index");
}

最佳答案

我认为这里的问题是使用 CopyToAsync 而不是调用 await,我认为你应该使你的方法声明异步任务并在 UploadCertificate.CopyToAsync 行中调用 await,或者只使用 CopyTo(但 I/O 更好地实现它异步)

当你的线程被杀死时,文件可能没有被完全复制,所以这就是你的文件被破坏的原因。

关于c# - MVC ASP.NET CORE,上传文件有时上传的文件已损坏/大小为 0 字节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48457190/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com