• ASP.NET 后台上传图片


    2021年开始了,今天写一个记录博客,记录在asp.net中上传图片的功能,其实很简单。主要是命名问题。避免命名重复就可以了。

    在这里主要先说功能,衍生出来的命名规则,适用场景等等且先不说。譬如按文件夹分类,按日期分类图片,重复上传图片是否修改等等。

    话不多说,直接上代码

           #region 上传图片
            /// <summary>
            /// 上传门票名称图片
            /// </summary>
            /// <returns></returns>
            public ActionResult UploadFilePhoto()
            {
                var files = Request.Files;
                if (files.Count <= 0)
                {
                      return Error("上传失败,文件未找到");
                }
                var file = files[0];
                var Serverpath = "/Files/Stock_GoodsType/";
                var path = Server.MapPath(Serverpath);
                if (!Directory.Exists(path))
                {
                    Directory.CreateDirectory(path);
                }
                var filename = Guid.NewGuid().ToString() + Path.GetFileName(file.FileName);
                var fullPath = Path.Combine(path, filename);
                file.SaveAs(fullPath);
           return Success("上传成功。", Serverpath + filename); }
    #endregion

    简简单单,回头我自己跑来拿着用。最后结束是给一个相对路径回去到前台做展示。

    当然,还可以有给绝对路径的方式

      #region 上传图片
    
            /// <summary>
            /// 上传门票名称图片
            /// </summary>
            /// <param name="folder"></param>
            /// <returns></returns>
            public ActionResult UploadFilePhoto(string folder)
            {
                var ServerUrl = System.Configuration.ConfigurationManager.AppSettings["SelfConfig"];
                var files = Request.Files;
                if (files.Count > 0)
                {
                    var file = files[0];
                    var Serverpath = $"/Files/{folder}/";
                    var path = Server.MapPath(Serverpath);
                    if (!Directory.Exists(path))
                    {
                        Directory.CreateDirectory(path);
                    }

                    string jpgname = Path.GetExtension(file.FileName);
                    var filename = Guid.NewGuid().ToString() + jpgname;
                    var fullPath = Path.Combine(path, filename);
                    file.SaveAs(fullPath);

                    string resultUrl = ServerUrl.Substring(0, ServerUrl.LastIndexOf('/')) + Serverpath + filename;
                    return Content(new AjaxResult { type = ResultType.success, message = "上传成功。", resultdata = resultUrl }.ToJson());

                }
                return Content(new AjaxResult { type = ResultType.error, message = "上传失败,文件未找到" }.ToJson());
            }
    #endregion

    区别只在于最后resultUrl里把绝对地址拼入了返回地址里面,以后拿出来用就比较好用了

  • 相关阅读:
    UDP协议
    发送大数据文件
    socket
    异常处理
    网络编程
    JupyterStudy——安装与环境部署
    PythonStudy——封装
    PythonStudy——继承、接口、鸭子类型
    PythonStudy——面向对象
    PythonStudy——xml 模块
  • 原文地址:https://www.cnblogs.com/SevenWang/p/14261737.html
Copyright © 2020-2023  润新知