.net服务器文件上传接口,C#/.NET-WebApi上传文件.后台

本文介绍了两种在C# .NET WebApi中实现文件上传接口的方法。第一种利用MultipartFileData类,文件会被自动保存并需要后续重命名。第二种通过HttpContext.Current.Request.Files获取文件,可手动控制文件保存和命名。文章详细展示了每种方法的代码实现,并提供了自定义返回类fileUploadResult的定义。
摘要由CSDN通过智能技术生成

看了很多前辈的内容,大概有两种写法,

1.用 MultipartFileData 类

接收文件后,会自动保存,名命方式是BodyPart_xxxxxx,没有后缀名的一个文件

想要按照自己的名命方式存的话,需要再加一步重命名的操作,

删除同理。

#方法1.

1 // POST api/ Task

2 [HttpPost]

3 public async Task Post(int id = 0)

4 {

5 Log.WriteLog("文件上传接口信息处理开始", CommConst.LOG_NORMAL, pageId);

6

7 #region 返回用类

8 // 返回用

9 fileUploadResult fResult = new fileUploadResult();

10 #endregion

11

12 // Check if the request contains multipart/form-data.

13 // 检查该请求是否含有multipart/form-data

14 if (!Request.Content.IsMimeMultipartContent())

15 {

16 fResult.errCode = ResultConst.UPLOAD_FAILURE_CODE;

17 fResult.message = "存在multipart/form-data!";

18 fResult.status = ResultConst.UPLOAD_FAILURE_STATUS;

19 throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType);

20 }

21

22 try

23 {

24 #region 方法1.自动保存.使用中

25 //可以用这个返回之后的键值对-此处有返回类故废弃不用

26 //Dictionary dic = new Dictionary();

27 //指定要将文件存入的服务器物理位置

28 string root = HttpContext.Current.Server.MapPath("~/App_Data");

29 var provider = new MultipartFormDataStreamProvider(root);

30

31 // Read the form data.

32 // 读取表单数据

33 await Request.Content.ReadAsMultipartAsync(provider);

34

35 if (Checker.IsNotEmpty(provider.FileData))

36 {

37 fResult.errCode = ResultConst.UPLOAD_SUCCESS_CODE;

38

39 // This illustrates how to get the file names.

40 // 以下描述如何获取文件名

41 foreach (MultipartFileData file in provid

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值