惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
The Blog of Author Tim Ferriss
Know Your Adversary
Know Your Adversary
P
Palo Alto Networks Blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
K
Kaspersky official blog
L
LINUX DO - 热门话题
P
Proofpoint News Feed
P
Privacy & Cybersecurity Law Blog
Google DeepMind News
Google DeepMind News
Attack and Defense Labs
Attack and Defense Labs
Cisco Talos Blog
Cisco Talos Blog
AI
AI
L
LINUX DO - 最新话题
H
Heimdal Security Blog
Hacker News: Ask HN
Hacker News: Ask HN
Webroot Blog
Webroot Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
The GitHub Blog
The GitHub Blog
I
Intezer
Blog — PlanetScale
Blog — PlanetScale
有赞技术团队
有赞技术团队
S
Securelist
博客园_首页
IT之家
IT之家
Schneier on Security
Schneier on Security
博客园 - 叶小钗
罗磊的独立博客
WordPress大学
WordPress大学
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
MongoDB | Blog
MongoDB | Blog
P
Proofpoint News Feed
阮一峰的网络日志
阮一峰的网络日志
A
Arctic Wolf
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
W
WeLiveSecurity
The Register - Security
The Register - Security
D
DataBreaches.Net
S
Security @ Cisco Blogs
Security Archives - TechRepublic
Security Archives - TechRepublic
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
腾讯CDC
Recorded Future
Recorded Future
NISL@THU
NISL@THU
N
News and Events Feed by Topic
T
Tailwind CSS Blog
N
News and Events Feed by Topic
Cyberwarzone
Cyberwarzone
T
Tor Project blog
www.infosecurity-magazine.com
www.infosecurity-magazine.com

博客园 - DarroldYang

linux 多线程,锁同步 Saas模式数据库层数据架构以及数据删除处理 ASP.NET MVC 自定义过滤属性实现Enterprise的log功能 ASP.NET MVC 请求生命周期 (Windows 7 IIS 7.5里面的 IIS and Built-in Accounts) IIS和内置帐户的IIS 用户控件,事件的触发顺序 IIS7.0 An ASP.NET setting has been detected that does not apply in Integrated managed pipeline mode 转ORACLE函数大全 ASP.NET AJAX 调用Service Method (Too simply) Office编程知识点汇总(3)--格式设置 Office编程知识点汇总(2)--基本工作表任务 Office编程知识点汇总:基本工作簿任务 asp.NET应用程序的技巧 CrystalReport的导出“Push”方式 Ajax Control Toolkit MutuallyExclusiveCheckBox 服务器端控件 Ajax Control Toolkit Slider 服务器端控件 Ajax Control Toolkit AlwaysVisibleControl 服务器端控件 Ajax Control Toolkit Accordion 服务器端控件 判断代码执行环境
ASP.NET MVC HtmlHelper类的方法总结 - DarroldYang
DarroldYang · 2010-03-27 · via 博客园 - DarroldYang

HtmlHelper类的辅助和扩展方法:


(1)ActionLink  生成一个特定的控制器行为连接

            <%=Html.ActionLink("Edit", "Edit", "Book", new { id = Model.ID }, new { @class = "BookDetail"})%>
            具体说明:

            Edit,为linkText,具体而言就是显示的字符串
            Edit,对应为ActionName;
          Book,为Controller;
          new { id = Model.ID },为生成元素的id定义;
          new { @class = “BookDetail” },则为元素添加了tag要素

(2)AntiForgeryToken 生成一个隐藏的表单字段,可与ValidateAntiForgeryToken属性一起使用以确保Request没有被修改

            具体说明:

                 如果你要保护你的应用程序的多个形式的相互独立,AntiForgeryToken 将生成不同的防伪标志

                  <%= Html.AntiForgeryToken("someArbitraryString") %>

                  [ValidateAntiForgeryToken(Salt="someArbitraryString")]
                 public ViewResult SubmitUpdate()
                 {
                           // ... etc
                  }


(3)AttributeEncode 数据属性编码 :提供了HtmlAttributeEncode功能

                具体说明:

                 <%= Html.AttributeEncode(Url.Action("Login")) %>


(4)DropDownList   基于一对键值对生成DropDownList

               具体说明:

             Html.DropDownList(    string name,    IEnumerable<SelectListItem> selectList,    string optionLabel,    object htmlAttributes)

             name:选择元素的名称,绑定到元素视图的模型属性

             selectList:选项列表,

             optionLabel:类似与“Select …”   可选的默认的标签

             htmlAttributes:可添加的属性

             使用方法
            

代码

        List<SelectListItem> items = new List<SelectListItem>();
         items.Add( 
new SelectListItem { Text = "Swimming", Value = "1" }); 
         items.Add(
new SelectListItem { Text = "Cycling", Value = "2", Selected = true }); 
         items.Add(
new SelectListItem { Text = "Running", Value = "3" }); 
        ViewData[
"ListItems"= items;

           <%= Html.DropDownList("ListItems") %>

(5)Encode 编码字符串,以防跨站脚本攻击    

   使用方法
            < %=Html.Encode("< script src=\"j . JS\">< div background='javascript:alert('');'/>")%>
    编码结果
             &lt;script src=&quot;j . JS&quot;&gt;&lt;/script&gt;&lt;div background='javascript:alert('');'/&gt;

(6)Hidden 生成表单隐藏字段

            <%= Html.Hidden("SearchType", 1) %>

            前台源代码:

             <input id="SearchType" name="SearchType" type="hidden" value="1" />

(7)ListBox  基于列键值对生成下拉框

          使用方法:

代码

 <%= Html.ListBox( 
                    
"optionsList"
                     
new [] 
                         { 
                                 
new SelectListItem 
                                     { 
                                             Text 
= "Option 1"
                                             Value 
= "opt1" 
                                     }, 
                                  
new SelectListItem 
                                     { 
                                             Text 
= "Option 2"
                                             Value 
= "opt2" 
                                     }, 
                                  
new SelectListItem 
                                     { 
                                             Text 
= "Option 3"
                                             Value 
= "opt3" 
                                     } 
                }, 
               
"Choose an option"   
             ) 
%>

             前台源代码:

                <select Length="16" id="optionsList" multiple="multiple" name="optionsList">

                      <option value="opt1">Option 1</option>
                      <option value="opt2">Option 2</option>
                      <option value="opt3">Option 3</option>
                </select>
(8)Pasword  生成表单密码字段

           使用方法:

                   <%= Html.Password("password", ViewData["password"]) %>
(9)TextBox 生成文本框

           使用方法:

               <%=Html.TextBox("Name", Model.Contact.Name)%>

           前台源代码:

                <input id="Name" name="Name" type="text" value="Alan" / >
(10)Button 生成一个按钮

             最新发布2.0.0.0MVC的已经没有了
(11)CheckBox  生成checkBox

          使用方法:

            <%= Html.CheckBox("a") %>

           前台源代码:

            <input id="a" name="a" type="checkbox"  />
(12)BeginForm  生成的HTML表单

         使用方法:

                    <% using (Html.BeginForm(Model.PostAction, "Home", FormMethod.Post))
                               { %>

        前台源代码:

                    <form action="/Home/Post" method="post">

(13)Image 生成图像标签

        引用一张图片

            <%=Html.Image("~/Images/bigwave.jpg") %><br />

         设置名称与宽度
            <%=Html.Image("~/Images/bigwave.jpg", "myWave", new { width = "30px" })%><br />
(14)Mailto  生成Email连接

            Simple Email:
                <%=Html.MailTo("mailto:weflytotti@163.com%22,%22Email Me!") %>

            With Subject and Body
                         <%=Html.MailTo("mailto:weflytotti@163.com%22,%22Email Me!","Sending you a note"
                            ,"Hey - wanted to say hi!") %>

(15)RadioButton 可选按钮

          <%=Html.RadioButton("Name","value") %>
RenderAction  呈现一个控制器行为方法
RenderPartial 由另一个视图引擎可选的呈现部分视图
RenderUserControl 呈现用户控件
RouteLink  生成特定的路由连接
SubmitButton 呈现一个类似按钮提交表单字段
SubmitImage  呈现一个类似图像提交表单字段
TextArea  呈现一个文本域
ValidationMessage 为特定的ViewData呈现一个验证信息
ValidationSummary 呈现一个ViewData的验证摘要。