人无信不立/2008-04-26 22:30

MonoRail学习笔记十五:文件上传

在MonoRail中文件上传很简单,使用智能绑定方式后直接用HttpPostedFile类就可以进行操作了
vm文件:
1<h1 align="center">Upload photo</h1> 
2<form action="upload.rails" method="post" enctype="multipart/form-data"> 
3
4$FormHelper.FileField("additionalFile")
5<input name="act" type="submit" value="Upload"> 
6</form> 
7
特别注意其中黑体的部分

Controller文件:
        public void upload(HttpPostedFile additionalFile)
        
{
            additionalFile.SaveAs(
"c:\\" + additionalFile.FileName.Substring(additionalFile.FileName.LastIndexOf("\\"+ 1));
            
this.CancelView();
        }
使用的是智能绑定的方式
注意:此Controller类需要从SmartDispatcherController继承

当然将vm文件的第四行换成:
<input type=file name="additionalFile" />
也是可以的
posted @ 2007-11-03 16:01 永春 阅读(715) 评论(6)  编辑 收藏 所属分类: MonoRail

  回复  引用  查看    
#1楼 2007-11-05 16:46 | 老刘.      
$HtmlHelper.InputFile("cover", "%{onchange='logo_icon()',id='fulCover'}")

$HtmlHelper.InputFile 提供了一个重载方法,可以添加一些键值对,比如做上传图片预览的时候挂个javascript什么的。当然,html标签的写法是最简单的:)

Monorails系列文章非常体贴,GSpring辛苦了:)
  回复  引用    
#2楼 2007-11-06 09:06 | hpy223 [未注册用户]
谢谢 GSpring的 Monorails系列文章,我是每期必看的!
  回复  引用    
#3楼 2007-11-19 20:45 | 陆俊杰2 [未注册用户]
严重支持,希望加油多写点,我很喜欢monrails的开发方式
  回复  引用  查看    
#4楼 2008-04-30 20:04 | ddr888      
自动绑定功能很强大 能深入一下就更好了
<input type=file name="additionalFile" />
control里面就直接可以用
public void upload(HttpPostedFile additionalFile)

真是太神奇了。
  回复  引用    
#5楼 2008-08-08 16:50 | ryo.hune [未注册用户]
文中指出的例子适用于文件数量固定的情况。
请教一下:如果上传的文件数不可预测又该怎么处理呢?

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
"五向定位"职业成长路线公开课(上海、南京、大连)
Google站内搜索


相关链接: