Ste*_*yer 39 httppostedfilebase asp.net-core-mvc
我正在尝试使用上传图片MVC 6; 但是,我无法找到班级HttpPostedFileBase.我检查过GitHub,没有运气.有谁知道上传文件的正确方法MVC6?
Vad*_*nov 55
MVC 6使用另一种机制来上传文件.您可以在GitHub或其他 来源上获得更多示例.只需将IFormFile您的操作或文件集合用作参数,或者IFormFileCollection如果您想在同一时间上传少量文件:
public async Task<IActionResult> UploadSingle(IFormFile file)
{
FileDetails fileDetails;
using (var reader = new StreamReader(file.OpenReadStream()))
{
var fileContent = reader.ReadToEnd();
var parsedContentDisposition = ContentDispositionHeaderValue.Parse(file.ContentDisposition);
var fileName = parsedContentDisposition.FileName;
}
...
}
[HttpPost]
public async Task<IActionResult> UploadMultiple(ICollection<IFormFile> files)
{
var uploads = Path.Combine(_environment.WebRootPath,"uploads");
foreach(var file in files)
{
if(file.Length > 0)
{
var fileName = ContentDispositionHeaderValue.Parse(file.ContentDisposition).FileName.Trim('"');
await file.SaveAsAsync(Path.Combine(uploads,fileName));
}
...
}
}
Run Code Online (Sandbox Code Playgroud)
您可以IFormFile在asp.net源中看到当前的合同.另请参阅ContentDispositionHeaderValue其他文件信息.
Kir*_*lla 20
HttpPostedFileBaseMVC6中没有.你可以IFormFile改用.
示例:https://github.com/aspnet/Mvc/blob/dev/test/WebSites/ModelBindingWebSite/Controllers/FileUploadController.cs
以上链接的代码段:
public FileDetails UploadSingle(IFormFile file)
{
FileDetails fileDetails;
using (var reader = new StreamReader(file.OpenReadStream()))
{
var fileContent = reader.ReadToEnd();
var parsedContentDisposition = ContentDispositionHeaderValue.Parse(file.ContentDisposition);
fileDetails = new FileDetails
{
Filename = parsedContentDisposition.FileName,
Content = fileContent
};
}
return fileDetails;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
33183 次 |
| 最近记录: |