Asp.net Mvc Codeplex Preview 5 第一篇 Helper的新特性


Asp.net Mvc Codeplex Preview 5是Asp.net Mvc的一个过渡版本,它包含了一些新特性。

  Pv5对于Helper的更改基本集中在HtmlHelper。对于简单的使用,我基本一带而过,如果朋友们有什么不明白,可以留言。

  AttributeEncode提供了HtmlAttributeEncode功能

  使用方法

  <%=Html.AttributeEncode("<scriptsrc="j.js"></script><divbackground='javascript:alert('');'/>")%>

  编码结果

  &lt;scriptsrc=&quot;j.js&quot;>&lt;/script>&lt;divbackground='javascript:alert('');'/>

  方法仅将引号 (")、“and”符号 (&) 和左尖括号 (<) 转换为等效的字符实体。该方法比Encode/HtmlEncode方法快得多。

  Encode 提供了HTMLENCODE功能

  使用方法

  <%=Html.Encode("<scriptsrc="j.js"></script><divbackground='javascript:alert('');'/>")%>

  编码结果

  &lt;scriptsrc=&quot;j.js&quot;&gt;&lt;/script&gt;&lt;divbackground='javascript:alert('');'/&gt;

  RenderUserControl 改为 RenderPartial,并提供了更好的模板寻找方式

  <%=Html.RenderUserControl("/Views/Shared/Menu.ascx")%>

  改为

  <%Html.RenderPartial("Menu");%>

  注意,原来的<%=%>改了为一句语言,有分号结束,与RenderAction统一了

  验证控件

  起到了服务器端验证作用
效果如下:

  使用方法如下:

  Model:

  publicclassMyModel
  {
    publicintID{get;set;}
    publicstringName{get;set;}
  }

  View:

   <h3>验证控件</h3>
  <%using(Html.Form("home","save",FormMethod.Post)){%>
  <%=Html.TextBox("ID")%>
  <%=Html.ValidationMessage("ID",new{style="color:green"})%>
  <%=Html.TextBox("Name")%>
  <%=Html.ValidationMessage("Name")%>
  <%=Html.SubmitButton()%>
  <%
    }%>
  <divstyle="color:Red">
    <%=Html.ValidationSummary()%>
  </div>

  Controller:

publicclassHomeController:Controller{
    publicActionResultIndex(){//显示表单的页
      ViewData["Title"]="HomePage";
      ViewData["Message"]="WelcometoASP.NETMVC!";
      returnView();
    }
    [AcceptVerbs("POST")]
    publicActionResultSave(int?ID,stringName)
    {//处理表单的页
      if(ID==null)
      ViewData.ModelState.AddModelError("ID",ID.ToString(),"ID是必添项!");
      if(string.IsNullOrEmpty(Name))
        ViewData.ModelState.AddModelError("Name",Name,"Name是必添项!");
      if(ViewData.ModelState.IsValid)//验证成功后做的操作
        returnRedirectToAction("Index");
      returnView("Index");//else
    }
    publicActionResultAbout(){
      returnView();
    }
  }

  这就是PV5为我们提供了简单的验证功能了。

  AntiForgeryToken

  这是一个验证提交页的东西,类似ViewState

  先在提交页的表单中写

  <%=Html.AntiForgeryToken() %>

  生成一个类似

  <inputname="__MVC_AntiForgeryToken"type="hidden"value="FaSCzN4P+6Hg977mdOX4z9pCKOy4vlP6whi0RGD+2L9mbTNGGx4GmN36sE4klJZf"/>

  的隐藏字段。

  拿刚才的Action为例:

  [ValidateAntiForgeryToken]

  publicActionResultSave(int?ID,stringName)

  DropDownList新加了默认项

  要 <%=Html.DropDownList("请选择","CityID", new { @class = "select" })%>

  如果不需要默认项留空字符串即可

本文作者:



相关阅读:
Linux命令free的输出含义
控制数据表中的字段权限及单元格权限
javaScript同意等待代码实现心得
JScript中值类型的封箱与拆箱
使用MaxMind 根据IP地址对访问者定位
在unix上让apache支持asp
成功做好网络管理员IIS使用十大原则
CSS3特性:CSS3 target伪类
c# Random快速连续产生相同随机数的解决方案
oracle多条件查询分页存储过程
php utf-8转unicode的函数
模板引擎正则表达式调试小技巧
Can’t open file:'[Table]mytable.MYI'
Oracle 10g手工创建数据库个人经验
快速导航
PHP MySQL HTML CSS JavaScript MSSQL AJAX .NET JSP Linux Mac ASP 服务器 SQL jQuery C# C++ java Android IOS oracle MongoDB SQLite wamp 交通频道 作文范文 精彩的马戏 经典散文:人生不是百米跑,别太在乎起跑线 新任教师岗前培训学习总结 自我优缺点范文 中职酒店管理专业班级自主管理问题及对策研究 推行“加减乘除”法树立城乡统筹观 火车上的雪 爱过就好 小学生三年级作文范文350字 中国传统文化——过年风俗作文1200字 三把钥匙 风扇论作文700字 班主任班级寄语 海南兴隆—三亚线路导游词 小学六年级作文600字:太空之旅 小学五年级作文500字:吃“神秘”的食品 我的新年第一天 2013年公司优秀党员申报材料 我要变成神笔马良 医院节能减排管理办法_企划文案 另一种流感 小学五年级作文600字:逝水无痕老师评改我教奶奶学普通话作文 送给爱人的经典生日祝福语“生日祝福语” 非常经典的:郭敬明经典爱情语录 跟踪审计员工作总结 又见新绿 新春遐想 小学六年级作文550字:有伴真好 穷人永远都是自己的错 年度审计工作计划 煤矿公司矿长个人先进事迹 社区工作者入党申请书 我丢失了那个盛满爱的饭盒 会动脑筋的动物500字 2006年市人事局工作总结 抓阄洗碗作文600字 入党思想汇报二 英语教研组工作计划-学校工作计划_学校工作计划 学生荣获国家奖学金感言 何时起.. 只为不再被扫地出门 我们会坚持到底 属于我,二十岁的天空 面对老爸我无奈650字 在杭州过三十作文500字 叶子和湖水的爱恋 爱情名言警句 那样会害了两个人 感受自然作文700字 互联网行业调研报告怎么写 开学典礼致辞大全 佛学大师经典语录

Copyright © 2016 phpStudy |