• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ASP.NETCoreWebAPI接收文件传输

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

ASP.NET解析API参数的方式有很多种,包括[FromBody],[FromForm],[FromServices],[FromHeader][FromQuery].

文件传输方式也分很多种,包括

1) 前端读取文件内容,将内容以text/xml/json/binary等形式传输。

2)前端不做任何处理,将文件放到Form中传输。

 

此处对Form传输文件进行介绍,可以将form看作是个多功能的词典类型,value值可以是text,也可以是FormFile.

  1.  
    [HttpPost]
  2.  
    [Route("PostFile")]
  3.  
    public String PostFile([FromForm] IFormCollection formCollection)
  4.  
    {
  5.  
    String result = "Fail";
  6.  
    if (formCollection.ContainsKey("user"))
  7.  
    {
  8.  
    var user = formCollection["user"];
  9.  
    }
  10.  
    FormFileCollection fileCollection = (FormFileCollection)formCollection.Files;
  11.  
    foreach (IFormFile file in fileCollection)
  12.  
    {
  13.  
    StreamReader reader = new StreamReader(file.OpenReadStream());
  14.  
    String content = reader.ReadToEnd();
  15.  
    String name = file.FileName;
  16.  
    String filename = @"D:/Test/" + name;
  17.  
    if (System.IO.File.Exists(filename))
  18.  
    {
  19.  
    System.IO.File.Delete(filename);
  20.  
    }
  21.  
    using (FileStream fs = System.IO.File.Create(filename))
  22.  
    {
  23.  
    // 复制文件
  24.  
    file.CopyTo(fs);
  25.  
    // 清空缓冲区数据
  26.  
    fs.Flush();
  27.  
    }
  28.  
    result = "Success";
  29.  
    }
  30.  
    return result;
  31.  
    }

可以将文件直接拷贝到其他文件,或者获取文件内容解析校验。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap