MVC 4 图片的上传及显示
1 首先我们看一下如何上传
1.1 view
上传页面:
1: @using (Html.BeginForm("Create", "Achievement", FormMethod.Post, new { enctype = "multipart/form-data" }))
2: {
3: <div class="editor-label">
4: @Html.LabelFor(model => model.Pictures)
5: </div>
6: <div class="editor-field">
7: <div><input type="file" name="Image" /></div>
8: </div>
9: }
这里需要注意的是BeginForm方法的参数
1.2 control
1: public ActionResult Create(Achivement achieve, HttpPostedFileBase image)
2: {
3: try
4: {
5:
6: if (image != null && image.ContentLength > 0)
7: {
8: string fileName = DateTime.Now.ToString("yyyyMMdd") + "-" + Path.GetFileName(image.FileName);
9: string filePath = Path.Combine(Server.MapPath("~/Images"), fileName);
10: image.SaveAs(filePath);
11: achieve.Pictures = "~/Images/" + fileName ;
12: }
13: m_achivementService.Create(achieve);
14: return RedirectToAction("Index");
15: }
16: catch
17: {
18: return View();
19: }
20: }
现在图片已上传到Images目录下,注意这里Pictures字段存的图片路径一定要带上“~”。
2 现在我们来看下如何显示
2.1 view
1: @using (Html.BeginForm("Edit", "Achievement", FormMethod.Post, new { enctype = "multipart/form-data" }))
2: {
3: <div class="editor-label">
4: @Html.LabelFor(model => model.Pictures)
5: </div>
6: <div class="editor-field">
7: @*@Html.EditorFor(model => model.Pictures)
8: @Html.ValidationMessageFor(model => model.Pictures)*@
9: <div><input type="file" name="Image" /></div>
10: <div>
11: @if (string.IsNullOrEmpty(Model.Pictures))
12: {
13: @:None
14: }
15: else
16: {
17: <img width="" height="" src="@Url.Content(Model.Pictures)" alt="images" />
18: }
19: </div>
20: </div>
21: }
这里需要注意的是src的地方,不能直接写上Model.Pictures,前面要加上@Url.Content, 不然显示的是c:/images/123.png, 图片不能正常显示。
2.2 control
跟create一样的操作, 此处省略。
MVC 4 图片的上传及显示的更多相关文章
- MVC文件图片ajax上传轻量级解决方案,使用客户端JSAjaxFileUploader插件01-单文件上传
前段时间做了几个关于图片.文件上传的Demo,使用客户端Query-File-Upload插件和服务端Badkload组件实现多文件异步上传,比如"MVC文件上传04-使用客户端jQuery ...
- django中图片的上传和显示
上传图片实际上是 把图片存在服务器的硬盘中,将图片存储的路径存在数据库中. 1 首先要配置文件上传的路径: 1.1 建立静态文件目录 在项目根目录下 新建一个 static文件夹,下面再建立一个med ...
- Django中图片的上传并显示
一.settings配置文件中配置 MEDIA_URL = '/media/' MEDIA_ROOT = os.path.join(BASE_DIR, 'medias').replace('\\', ...
- Django_图片的上传下载显示配置
图片上传的配置 image = models.ImageField(upload_to='org/%Y/%m',...) upload_to默认是上传到项目的'MEDIA_ROOT/org/%Y/%m ...
- 航空售票系统设计分析(Markdownpad2图片服务器上传无法显示)
一.体系结构设计 1.系统原型图 2.体系结构环境图 3.构建结构图 二.人机交互界面设计 1.用户分析结果及建议 本次分析的主要目标关注用户评论反馈,对反馈进行归纳,设计出用户喜欢的界面样式.用户的 ...
- ruby on rails爬坑(三):图片上传及显示
一,问题及思路 最近在用rails + react + mysql基本框架写一个cms + client的项目,里面涉及到了图片的上传及显示,下面简单说说思路,至于这个项目的配置部署,应该会在寒假结束 ...
- ASP.NET MVC图片管理(上传,预览与显示)
先看看效果(下面gif动画制作有点大,5.71MB): 题外话:上面选择图片来源于Insus.NET的新浪微博:http://weibo.com/104325017 也是昨晚(2015-07-03)I ...
- Html5+asp.net mvc 图片压缩上传
在做图片上传时,大图片如果没有压缩直接上传时间会非常长,因为有的图片太大,传到服务器上再压缩太慢了,而且损耗流量. 思路是将图片抽样显示在canvas上,然后用通过canvas.toDataURL方法 ...
- Mvc利用淘宝Kissy uploader实现图片批量上传附带瀑布流的照片墙
前言 KISSY 是由阿里集团前端工程师们发起创建的一个开源 JS 框架.它具备模块化.高扩展性.组件齐全,接口一致.自主开发.适合多种应用场景等特性.本人在一次项目中层使用这个uploader组件. ...
随机推荐
- Lean Data Innovation Sharing Salon(2018.09.15)
时间:2018.09.15地点:北京国华投资大厦
- WPF C#仿ios 安卓 红点消息提示
原文:WPF C#仿ios 安卓 红点消息提示 先把效果贴出来,大家看看. 代码下载地址: http://download.csdn.net/detail/candyvoice/9730751 点击+ ...
- Vue 实际项目中你可能会遇见问题
纸上得来终觉浅,绝知此事要躬行! Vue的文档和教程看的太多,小的demo做的多,也不如自己实际的进行一个完整项目的开发.只有做了才知道原来问题这么多,这里列举了一些你做demo教程可能不会遇见的坑. ...
- flask-admin 快速打造博客 系列一
前言: 我想分享flask+flask-admin快速打造博客的详细教程,可是发现网易课堂已经有相应的免费课堂了,所以就不打算一点一滴的在这里做笔记,分享这些东西了.所以我主要集中在flask-adm ...
- Reactjs-JQuery-Omi-Extjs-Angularjs对比
写在前面 前端越来越混乱了,当然也可以美其名曰:繁荣. 当新启动一个前端项目,第一件事就是纠结:使用什么框架,重造什么轮子? 那么,希望看完此篇,能够给你一个清晰的认识,或者让你更加地纠结和无所适从 ...
- [Beta阶段]展示博客
一.团队成员简介与个人博客地址 团队博客地址:http://www.cnblogs.com/wowotoubuaa/ 江昊,项目经理http://www.cnblogs.com/haoj/ 王开,后端 ...
- eclipse中git的author和commiter的修改
项目目录,隐藏的文件.git的文件夹,config文件 eclipse-->右击项目--showin--system explorer.git 打开config文件加上 [user] name ...
- react 动态获取数据
如果reander()里面的dom元素是动态获取的,就要将函数放到setSTATE()里面执行
- octave基本指令4
octave基本指令4 图形化显示数据 >> t=[0:0.01:0.98]; >> y1 = sin(2*pi*4*t); %pi表示π >> plot(t,y1 ...
- MySQL基础~~增、删、改、简单查
mysql> desc demo; +-----------+------------+------+-----+---------+----------------+ | Field | Ty ...