ASP.NET WebApi 图片上传

以下是代码的实现过程:

Html页面表单布局:

 1   <form id="UpPicture"   enctype="multipart/form-data" action="服务器路径地址" method="post">
 2         <table>
 3             <tr>
 4                 <td>
 5                     <input type="file" name="Picture"/>
 6                 </td>
 7             </tr>
 8
 9        <tr>
10                 <td>提交</td>
11                 <td>
12                     <input type="submit" value="提交" /></td>
13             </tr>
14         </table>
15     </form>

服务器端是实现:

 1       /// <summary>
 2         /// 图片上传方法,客户端通过表单的形式上传
 3         /// </summary>
 4         /// <returns></returns>
 5         [HttpPost]
 6         public PhotographUploadReturn PhotographUpload()
 7         {
 8             var msg = "";
 9             string _toServerPicturePath = "";//文件名
10             //接收表单传递过来的图片,需要限定上传的图片格式:".JPG", ".JPEG", ".GIF", ".PNG", ".BMP"
11             var file = HttpContext.Current.Request.Files["Picture"];
12
13             //检查文件是否被预览选中,判断方式:通过判断文件名是否为空或者空字符串
14             if (!string.IsNullOrWhiteSpace(file.FileName))
15             {
16                 //限定上传图片的格式类型
17                 string[] LimitPictureType = { ".JPG", ".JPEG", ".GIF", ".PNG", ".BMP" };
18                 //当图片上被选中时,拿到文件的扩展名
19                 string currentPictureExtension = Path.GetExtension(file.FileName).ToUpper();
20                 //此处对图片上传的类型进行限定操作
21                 if (LimitPictureType.Contains(currentPictureExtension))
22                 {
23                     //此处标记图片上传至服务器的唯一新名称
24                     string _newFileName = Guid.NewGuid().ToString();
25                     _toServerPicturePath = DateTime.Now.Year + "/" + DateTime.Now.Month + "/";
26                     string _dbPicturePath = "Certifications/" + _toServerPicturePath + _newFileName + currentPictureExtension;
27                     _toServerPicturePath = AppDomain.CurrentDomain.BaseDirectory + "Certifications/" + _toServerPicturePath;//最终生成的文件名:+_newFileName +currentPictureExtension
28
29                     //首先判断图片上传至服务的路径是否存在,不存在则创建并执行保存操作,存在则直接保存
30                     if (Directory.Exists(_toServerPicturePath))
31                     {
32                         //最终上传的文件路径全名
33                         _toServerPicturePath = _toServerPicturePath + _newFileName + currentPictureExtension;
34                     }
35                     else
36                     {//不存在此路径,则创建后执行保存操作
37                         Directory.CreateDirectory(_toServerPicturePath);
38                         _toServerPicturePath = _toServerPicturePath + _newFileName + currentPictureExtension;
39                     }
40                     //执行保存图片,并插入数据库操作
41                     file.SaveAs(HttpContext.Current.Server.MapPath("~/" + _dbPicturePath));
42                     ////执行数据库相关操作,没有异常则代码继续执行,否则跳出
43                     msg = "图片上传操作成功!";
44                 }
45                 else
46                 {
47                     msg = "图片上传操作失败,请选择扩展名为:.JPG, .JPEG, .GIF, .PNG, .BMP 等类型图片。";
48                 }
49             }
50             else
51             {
52                 msg = "图片上传操作失败,图片没有被选中!";
53             }
54
55             return new PhotographUploadReturn { ImageName = _toServerPicturePath, Message = msg };
56         }

posted on 2018-07-27 16:52 tianyamoon 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/tianyamoon/p/9378524.html

ASP.NET WebApi 图片上传相关推荐

  1. 用纯ASP代码实现图片上传并存入数据库中

      用纯ASP代码实现图片上传并存入数据库中    热     ★ 用纯ASP代码实现图片上传并存入数据库中 用ASP编写网站应用程序时间长了,难免会遇到各式各样的问题,其中关于如何上传文件到服务器恐 ...

  2. C# ASP.NET MVC 图片上传的多种方式(存储至服务器文件夹,阿里云oss)

    图片上传时我们进场用到的一个功能今天将他整理了一下写了个demo希望对大家有用 该demo分为如下 1.上传至至服务器文件夹 2.上传至阿里云oss 3.百度webupload上传图片 效果图如下: ...

  3. ASP.Net MVC3 图片上传详解(form.js,bootstrap)

    图片上传的插件很多,但很多时候还是不能切合我们的需求,我这里给大家分享个我用一个form,file实现上传四张图片的小demo.完全是用jquery前后交互,没有用插件. 最终效果图如下: 玩过花田人 ...

  4. 使用asp.net将图片上传并存入SqlServer中,然后从SqlServer中读取并显示出来

    一,上传并存入SqlServer  数据库结构   create table test   {      id identity(1,1),      FImage image   }   相关的存储 ...

  5. ASP.NET的图片上传和显示

    上传 protected void btnUpload_Click(object sender, EventArgs e){if (!filUpload.HasFile) {Alert("没 ...

  6. asp 调用php上传图片,asp 版 本地图片上传问题!

    真的很简单~  就是两个 点点  的问题~:(    真当是 人不学不知义 啊~:) 为了让和我一样笨笨的人能节省些 宝贵的时间打麻将~:)我把 简单的代码贴出来~:) KE.show({ id : ...

  7. asp.net多图片上传案例_会计小明的故事-成本核算案例篇

    因涉及成本核算案例篇,所需要的图表比较多,但是知乎不同于微信可以直接将文档图表复制过来,知乎专栏文章,所有图表必须先截图,然后以图片形式展示.但是成本核算案例图表实在是太多,一一截图,一则影响整体观感 ...

  8. android 调用asp.net webservice 图片上传到服务器

    图片转换: package com.qsmart.audit.utility;import java.io.ByteArrayOutputStream; import java.io.File; im ...

  9. asp.net mvc 上传到服务器 图片不显示,ASP.NET MVC实现图片上传、图片预览显示

    先看看效果(下面gif动画制作有点大,5.71MB): 题外话:上面选择图片来源于Insus.NET的新浪微博,言归正传,由于以前的asp.net mvc的练习文件上传文件,显示或是下载等博文,均是存 ...

  10. kindeditor扩展粘贴截图功能修改图片上传路径并通过webapi上传图片到图片服务器...

    2019独角兽企业重金招聘Python工程师标准>>> kindeditor是一个非常好用的富文本编辑器,它的简单使用我就不再介绍了. 而kindeditor却对图片的处理不够理想. ...

最新文章

  1. 数控加工编程计算机的配置,计算机辅助数控加工编程.ppt
  2. java pdf打印_Java 打印PDF文档
  3. ADF BC:创建绑定到业务组件的UI表
  4. proteus仿真micropython_基于micropython的滑动平均滤波器
  5. html5游戏制作入门系列教程(三)
  6. 计算机图形学是指使用计算机通过,【填空题】计算机图形学是指使用计算机通过()在显示设备上构造出图形来。...
  7. fastText、TextCNN、TextRNN……这里有一套NLP文本分类深度学习方法库供你选择
  8. 大学生静态HTML鲜花网页设计作品 DIV布局网上鲜花介绍网页模板代码 DW花店网站制作成品 web网页制作与实现
  9. 一文让你详细了解CPU的内部架构和工作原理(好文)
  10. 佛罗里达大学计算机博士,2020年佛罗里达大学博士含金量
  11. 23MySQL 是怎么保证数据不丢的
  12. 【评测】SF9/SF21昆虫细胞培养基
  13. java实验2总结心得,java实验的心得体会
  14. Final Cut Pro 7非线性编辑高级教程
  15. nuget 的生成、发布、使用和更新
  16. [转帖]隔行扫描与逐行扫描视频有什么区别
  17. Linux使用rpm命令卸载软件
  18. ## 项目第十五天 ##
  19. Flannel网络原理(转载)
  20. 游戏网站怎样对接支付(知识介绍)

热门文章

  1. 利用ComplexHeatmap绘制热图(一)
  2. Java 日期格式工具类
  3. 反射在工厂模式中的使用
  4. Codeforces Round #483 (Div. 1) A. Finite or not?
  5. webpack使用七
  6. fastdfs5.10 centos6.9 安装配置
  7. jQuery.proxy用法
  8. 使用html和css的一些经验
  9. [ZT]javascript window resize 窗口改变事件
  10. freeldr 如何调用_BootMain的