MVC 6 HttpPostedFileBase? [英] MVC 6 HttpPostedFileBase?

查看:145
本文介绍了MVC 6 HttpPostedFileBase?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用MVC 6上传图像;但是,我找不到类HttpPostedFileBase.我检查了GitHub,但没有任何运气.有人知道MVC6中上传文件的正确方法吗?

I am attempting to upload an image using MVC 6; however, I am not able to find the class HttpPostedFileBase. I have checked the GitHub and did not have any luck. Does anyone know the correct way to upload a file in MVC6?

推荐答案

MVC 6使用了另一种机制来上传文件.您可以在 GitHub 资源.只需将IFormFile用作操作的参数或文件集合或

MVC 6 used another mechanism to upload files. You can get more examples on GitHub or other sources. Just use IFormFile as a parameter of your action or a collection of files or IFormFileCollection if you want upload few files in the same time:

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));
        }
        ...
    }
}

您可以在 asp中查看IFormFile的当前合同.net来源.另请参见 ContentDispositionHeaderValue .

You can see current contract of IFormFile in asp.net sources. See also ContentDispositionHeaderValue for additional file info.

这篇关于MVC 6 HttpPostedFileBase?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆