Api---传图片


[HttpPost]
 public ActionResult Craftsmanfraction([FromForm] fractionVo fct)
        {
            SysStatus stu = new SysStatus();
            var url = "";
            if (CheckFileExtension(fct.ScoreUrl))
            {
                if (fct.ScoreUrl.Length == 1)
                {

                    url =SaveFile(fct.ScoreUrl, "Craftsmanfraction")[0];
                }
                else
                {
                    stu.Code = 1;
                    stu.Message = "只能上传一张图片";
                    
                }
            }
            else
            {
                stu.Code = 1;
                stu.Message = "图片上传的文件不是常用图片格式!";
               
            }
            return stu;
            Recordvo rcd = new Recordvo();
            rcd.CraftsmanId = fct.CraftsmanId;
            rcd.Fraction = fct.Fraction;
            rcd.ScoreContent = fct.ScoreContent;
            rcd.ScoreUrl = url;
            rcd.ScoreType = "工匠管理加分";
            rcd.TypeId = "0";
            rcd.ScoreAction = 1;
            var srcd = thingScoreRecord(rcd);
            return srcd;
        }

//验证附件类型

public bool CheckFileExtension(IFormFile[] FilesInput)
        {
            if(FilesInput!=null)
            {
                foreach (IFormFile formFiles in FilesInput)
                {

                    string extension = Path.GetExtension(formFiles.FileName);判断返回扩展名(包括句点“.”)指定路径字符串的。

                    if (extension != ".bmp" && extension != ".jpg" && extension != ".jpeg" && extension != ".png")
                    {
                        return false;
                    }
                }
            }            
            return true;
        }

//图片上传

  public List<string> SaveFile(IFormFile[] formFiles, string type)
        {

            SysStatus url = new SysStatus();
            List<string> list = new List<string>();
            if (formFiles != null)
            {
                string fileName = string.Empty;
                string date = DateTime.Now.ToString("yyyyMMdd");//获取当前的时间
                string rootUrl = Directory.GetCurrentDirectory();//获取当前工作目录
                string rootPath = ““;if (type == "Craftsmanfraction")//根据类型放到指定的文件夹中
                {
                    rootPath = rootUrl + "/Upload/Craftsmanfraction/" + date;
                }
                else if (type == "Craftsmanfractionapp")
                {
                    rootPath = rootUrl + "/Upload/Craftsmanfractionapp/" + date;
                }
                else if (type == "Qualifications")
                {
                    rootPath = rootUrl + "/Upload/Qualifications/" + date;
                }

                if (!Directory.Exists(rootPath))
                {
                    Directory.CreateDirectory(rootPath);
                }
               // 扩展名fileName
                for (int i = 0; i < formFiles.Length; i++)
                {

                    formFiles[i].OpenReadStream();
                    fileName = Guid.NewGuid().ToString() + Path.GetExtension(formFiles[i].FileName);//创建文件名
                    string stud = "";
                    string iosPath = "craftsman/" + type + "/" + fileName;

                    if (type == "Craftsmanfraction")
                    {

                        Utils.UploadFileHelper.SaveFile(formFiles[i], "Upload/Craftsmanfraction/" + date + "/", rootUrl, fileName);//把文件放到指定的文件夹里
                        stud = "/Upload/Craftsmanfraction/" + date + "/" + fileName;//数据库保存的图片路径
                    }
                    else if (type == "Craftsmanfractionapp")
                    {
                        Utils.UploadFileHelper.SaveFile(formFiles[i], "Upload/Craftsmanfractionapp/" + date + "/", rootUrl, fileName);
                        stud = "/Upload/Craftsmanfractionapp/" + date + "/" + fileName;
                    }
                    else if (type == "Qualifications")
                    {
                        Utils.UploadFileHelper.SaveFile(formFiles[i], "Upload/Qualifications/" + date + "/", rootUrl, fileName);
                        stud = "/Upload/Qualifications/" + date + "/" + fileName;
                    }

                    list.Add(stud);
                }
            }
            return list;
        }