MVC:上传文件
今天写了一个使用MVC上传的DEMO,很简单不超过10行代码。代码如下(关注重点,所以尽量精简掉其他代码):
- 项目结构
aaarticlea/png;base64,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" alt="" />
- 控制器代码
public ActionResult Index()
{
return View();
} [HttpPost]
public ActionResult Upload(HttpPostedFileBase file)
{
if (file == null)
{
return Content("没有文件!");
} var filename = Path.Combine(Request.MapPath("~/upload"), Path.GetFileName(file.FileName));
file.SaveAs(filename);
return Content("OK");
} - 视图代码
@{
Layout = null;
} <!DOCTYPE html> <html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
</head>
<body>
<div>
<form enctype="multipart/form-data" method="post" action="uploadfile/Upload">
<input type="file" name="file" />
<button type="submit">上传</button>
</form>
</div>
</body>
</html> - 一些值得注意的地方:
- input标签的name要和update方法的参数的名字一致。
MVC:上传文件的更多相关文章
- Spring MVC上传文件
Spring MVC上传文件 1.Web.xml中加入 <servlet> <servlet-name>springmvc</servlet-name> <s ...
- MVC上传文件
ASP.NET MVC上传文件是必段撑握的知识.加强训练才是.以前Insus.NET曾使用第三方MyAjaxForm.js :http://www.cnblogs.com/insus/p/378548 ...
- Spring MVC 上传文件
Spring MVC上传文件需要如下步骤: 1.前台页面,form属性 method设置为post,enctype="multipart/form-data" input的typ ...
- asp.net MVC 上传文件 System.Web.HttpException: 超过了最大请求长度
APS.NET MVC 上传文件出现 System.Web.HttpException: 超过了最大请求长度 这个问题 原因是 默认最大上传文件大小为4096,而我提交的文件太大了. 解决方案:修改 ...
- Spring MVC上传文件原理和resolveLazily说明
问题:使用Spring MVC上传大文件,发现从页面提交,到进入后台controller,时间很长.怀疑是文件上传完成后,才进入.由于在HTTP首部自定义了“Token”字段用于权限校验,Token的 ...
- MVC 上传文件并展示
最近悟出来一个道理,在这儿分享给大家:学历代表你的过去,能力代表你的现在,学习代表你的将来. 十年河东十年河西,莫欺少年穷 学无止境,精益求精 最近在做自学MVC,遇到的问题很多,索性一点点总结 ...
- ASP.NET MVC上传文件----uploadify的使用
课程设计需要实现上传文件模块,本来ASP.NET是有内置的控件,但是ASP.NET MVC没有,所以就有两种方法:自定义和采用第三方插件.由于时间的关系,故采用第三方插件:uploadify. upl ...
- ASP.NET MVC上传文件
最近参考网络资料,学习了ASP.NET MVC如何上传文件.最基本的,没有用jQuery等技术. 1.定义Model public class TestModel { [Displ ...
- 解析Spring MVC上传文件
新建一个普通的maven工程 在pom.xml文件中引入相应的坐标 <?xml version="1.0" encoding="UTF-8"?> & ...
随机推荐
- Html与CSS布局技巧
一.单列布局 1.水平居中:(注:下面各个实例中实现的是child元素的对齐操作,child元素的父容器是parend元素) 1-1:使用inline-block和text-align实现: .par ...
- java for each 错误
简而言之,for each 适用于不改变数组,容器元素的场合,如果改变,必须用索引或者iterator. 例如: A[] arrayA = new A[5]; for (A a : arrayA) { ...
- android中ListView控件&&onItemClick事件中获取listView传递的数据
http://blog.csdn.net/aben_2005/article/details/6592205 本文转载自:android中ListView控件&&onItemClick ...
- 【BZOJ1009】【HNOI2008】GT考试
依旧看人代码写,不过我觉得自己慢慢写一个也可以写成? 原题: 阿申准备报名参加GT考试,准考证号为N位数X1X2....Xn(0<=Xi<=9),他不希望准考证号上出现不吉利的数字.他的不 ...
- Python实现ORM
ORM即把数据库中的一个数据表给映射到代码里的一个类上,表的字段对应着类的属性.将增删改查等基本操作封装为类对应的方法,从而写出更干净和更富有层次性的代码. 以查询数据为例,原始的写法要Python代 ...
- ps图层混合模式
溶解: ------------- 变暗:当使用该模式时,图像中的颜色或物体,总是其中颜色比较深的覆盖比较浅的,而数值相同或更深的像素不受影响.但记住,是上层针对下层,也就是说要有两个图层才有用 正片 ...
- How can I create an executable JAR with dependencies using Maven?
http://stackoverflow.com/questions/574594/how-can-i-create-an-executable-jar-with-dependencies-using ...
- MFC如何添加自定义控件
project->add to project->components and controls在Registered ActiveX Controls下找到你注册的自定义控件就可以了 ...
- Android Apk反编译得到Java源代码
大家做Android开发,看到别人应用里一些好的功能,是不是很想得到源码,借鉴一下?既然Android是用JAVA开发的,那么我们就能很容易的通过反编译的到应用的源代码.下面我简单介绍下应该怎么操作. ...
- unity, monodevelop 不安全的代码只会在使用/unsafe编译的情况下出现
http://blog.sina.com.cn/s/blog_6b3661a90102wx2g.html