(2)找到添加,点击或鼠标悬停,
(3)新建项目

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-guiPuxep-1613978771824)( upload-images.jianshu.io/upload_imag… )]

2、创建一个 ASP.NET Core Web 应用程序:记得选择 .NET core ,选错了就没法使用了
选择后点击下一步。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rGZcEGDe-1613978771829)( upload-images.jianshu.io/upload_imag… )]

3、更改项目名称,我这边使用的是 kouzhao , 你们也可以换成别的名字,然后点击创建。

4、平台选择 .NET Core ASP.NET 3.1 ,选择 API 项目 , 身份验证:不进行身份验证。高级设置中,去掉勾选 为HTTPS 配置,然后点击创建。

上面描述了如何创建一个 .net core webapi 的项目,接下来要了解 如何添加 接口

5、在右边找到我们的 kouzhaowebapi 这个项目,在项目中 Controllers 文件夹下添加一个 DiscernController 的类

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FPiZVDll-1613978771837)( upload-images.jianshu.io/upload_imag… )]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6NLipWl8-1613978771838)( upload-images.jianshu.io/upload_imag… )]

6、将下面代码文件

using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Logging;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
namespace kouzhaowebapi.Controllers
    [ApiController]
    public class DiscernController : ControllerBase
        /// <summary>
        /// 上传文件:口罩验证
        /// </summary>
        /// <param name="stream"></param>
        /// <param name="fileName"></param>
        [HttpPost("upload")]
        [Route("api/discern/kouzhao")]
        public object UploadFile([FromForm] IFormCollection collection)
            //申明返回的结果
            string result = "";
            FormFileCollection filelist = (FormFileCollection)collection.Files;
            //检查是否有文件提交上来
            if (filelist != null && filelist.Any())
                //我们只做第一个文件的检查
                IFormFile file = filelist[0];
                //做随机数,用到文件夹名字上,防重名
                Random random = new Random();
                string r = "";
                int i;
                for (i = 1; i < 11; i++)
                    r += random.Next(0, 9).ToString();
                //文件路径
                string Tpath = "/file/";
                string name = file.FileName;
                string FileName = DateTime.Now.ToString("yyyyMMddHHmmssfff") + r;
                string FilePath = @"C:\" + Tpath;
                //获取文件类型
                string type = System.IO.Path.GetExtension(name);
                DirectoryInfo di = new DirectoryInfo(FilePath);
                if (!di.Exists)
                    di.Create();
                //文件保存的路径
                var filefullname = FilePath + FileName + type;
                using (FileStream fs = System.IO.File.Create(filefullname))
                    // 复制文件
                    file.CopyTo(fs);
                    // 清空缓冲区数据
                    fs.Flush();
                    fs.Close();
                    fs.Dispose();
                //成功提示赋值到返回结果中
                result = "文件上传成功";
            return result;

7、接下来运行项目,我们使用控制台界面运行项目。按 F5 运行项目后,得到下面的情况,就代表程序启动了

8、使用 Postman 测试上传图片
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dfpKRb6Z-1613978771843)(upload-images.jianshu.io/upload_imag…)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WPylVRMO-1613978771843)(https://upload-images.jianshu.io/upload_images/25699315-5d9cf78eaaf8d99b.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NNmwid0z-1613978771845)(upload-images.jianshu.io/upload_imag…)]

到这里就是 新建一个 webapi 项目,并实现上传文件的接口功能,让文件可以传输到服务器上 的全部内容了,后续会继续出如何接入接口的 过程

欢迎进qq群交流:704028989

分类:
后端
  •