• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >ASP.NET > ASP.NET MVC实现图片上传、图片预览显示

ASP.NET MVC实现图片上传、图片预览显示

作者:Insus.NET 字体:[增加 减小] 来源:互联网 时间:2017-05-11

Insus.NET通过本文主要向大家介绍了asp net mvc,asp net mvc 4,asp net mvc 5,精通asp.net mvc 5,精通asp.net mvc 4等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

先看看效果(下面gif动画制作有点大,5.71MB):

题外话:上面选择图片来源于Insus.NET的新浪微博,言归正传,由于以前的asp.net mvc的练习文件上传文件,显示或是下载等博文,均是存储于站点目录之中。这次练习是把图片存储于数据库,也就是以图片的数据流存储,在上传时我们需要把文件处理为数据库,显示时,我们需要把数据流处理为文件。

一看上面的演示,我们还会看到一个预览区。选择图片时,预览区会预先显示选择图片。确认正确之后,我们再上传至数据库中。

使用下面SQL语句创建表[dbo].[ImageStore],存储过程2个[dbo].[usp_ImageStore_Insert]和[dbo].[usp_ImageStore_GetAll]:

根据数据表,我们需要在asp.net mvc的models目录中创建一个mode,习惯性是以数据表来创建:

由于我们还要处理程序与数据库之间的交流,创建一个Entity,两个方法,一是获取所有数据,另一个是为添加数据所准备:

上面的Entity中,有两个标记。
标记2,Insus.NET有写成一个Utility,也就是说把DataTable转换为List<T>的工具,其实有以前的asp.net mvc也有提及或是代码分享,在此你不必再费时费心去搜索,参考下面代码就是了:

在上面的代码示例中,#35行的方法,是DataTable转换为json序列化,由于本例中并无使用到,即在此略过。

接下来,打开控制器创建两Action,第一个控制是视图操作,我们有把数据传入视图中。而第二个操作,是为处理上传文件方法所服务。

控制器两个Action代码:

下是完成View视图,在视图中我们先定义表格样式:

准备即时预览图片的js代码:

显示数据与动态产生Table:

上面代码示例中,#119与#120代码,是显示图片,有关base64图片,可以参考独立演示:

演示ASP.NET MVC应用程序,显示Base64图片。

在控制器中,Insus.NET有创建两个Action,一个是为视图准备,另一个是把文件转换为FileStream,然后再用 Convert.ToBase64String() 来转换。

在下面的视图中,添加一个div markup来load图片。语法:'<img src="data:image/png;base64,' + data.Base64Imgage + '" />':

实时演示:

当然,完全正确应该是如下:

#122是动态指定图片原来的mine type。语法就是简洁与方便。

asp.net mvc图片上传与显示,整个实现过程,并没有怎样的复杂,一个一个小功能来实现。

以上就是本文的全部内容,希望对大家的学习有所帮助。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 详解ASP.NET MVC 常用扩展点:过滤器、模型绑定
  • ASP.NET MVC从视图传参到控制器的几种形式
  • ASP.NET MVC 4 中的JSON数据交互的方法
  • ASP.NET MVC制作404跳转实例(非302和200)
  • 详解ASP.NET MVC 利用Razor引擎生成静态页
  • 详解ASP.NET MVC 解析模板生成静态页(RazorEngine)
  • ASP.NET MVC4 利用uploadify.js多文件上传
  • ASP.NET mvc4中的过滤器的使用
  • Asp.net MVC下使用Bundle合并、压缩js与css文件详解
  • 详解Asp.Net MVC——控制器与动作(Controller And Action)

相关文章

  • 2017-05-11验证一个ASP.NET应用程序和页面的生命周期的实现代码
  • 2017-05-11asp.net中一次性动态绑定多个droplistdown
  • 2017-05-11ASP.NET中动态控制RDLC报表
  • 2017-05-11asp.net用url重写URLReWriter实现任意二级域名 高级篇
  • 2017-05-11asp.net DropDownList实现二级联动效果
  • 2017-05-11NET 弹出页面窗口选择返回值
  • 2017-05-11IP地址与整数之间的转换实现代码(asp.net)
  • 2017-05-11ASP.NET笔记之 图库权限设置的方法
  • 2017-05-11xpath的数据和节点类型以及XPath中节点匹配的基本方法
  • 2018-08-20ASP.NET Core与NLog集成的完整步骤

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • visual studio 2017企业版本安装(附序列号)
    • 程序中常用的种代码
    • ASP.NET中实现获取调用方法名
    • ASP.NET比较常用的26个性能优化技巧
    • 在ASP.NET 2.0中操作数据之五十七:在分层架构中缓存数据
    • asp.net(C#)遍历memcached缓存对象
    • asp.net获取select值的方法
    • DataGridView展开与收缩功能实现
    • 详解WebApiClient的JsonPatch局部更新
    • HTTP错误500.19解决方法(定义了重复的节点)

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有