图文ASP.Net MVC Razor页面中HtmlHelper帮助程序的写法
将以下内容复制到cshtml文件中

@using Microsoft.AspNetCore.Html
@{
ViewData["Title"] = "";
} <p>AntiForgeryToken的使用</p>
@Html.AntiForgeryToken()
<p>ActionLink的使用</p>
<br />
@Html.ActionLink("LinkText", "RazorShow") @Html.ActionLink("带控制器", "ActionName", "ControllerName") @Html.ActionLink("带路由信息", "ActionName", new { id = 1, name = 3, age = 4, height = 5 }) <a href="/Html/ActionName/1?name=3&age=4&height=5">带路由信息</a> @Html.ActionLink("链接", "action", new { id = 1, name = 3, age = 4, height = 5 }, new { @class = "classText", style = "width:200px", tt = "xxx" }) <a class="classText" href="/Home/Index/@DateTime.Now" style="width:200px" tt="xxx">Home</a>
<p>RouteLink的使用</p> @Html.RouteLink("LinkText", new { action = "ActionName" }) @Html.RouteLink("LinkText", new { action = "ActionName", controller = "ControllerName" }) @Html.RouteLink("LinkText", new { action = "ActionName", id = 1 }) <p>Input 输入框的使用-TextBox</p>
@Html.TextBox("NameId") @Html.TextBox("NameId", "Value") @Html.TextBox("NameId", "Value", new { @class = "classText", @style = "width:200px", @tt = "xxx" }) <p>Input 输入框的使用-Hidden</p>
@Html.Hidden("NameId") @Html.Hidden("NameId", "Value") <br />
<p>Input 输入框的使用-Password</p>
@Html.Password("NameId") @Html.Password("NameId", "Value") <p>Input 输入框的使用-CheckBox</p>
@Html.CheckBox("NameId", true) @Html.CheckBox("NameId", false)
<p>Input 输入框的使用-RadioButton</p> @Html.RadioButton("NameId", "Value", true) @Html.RadioButton("NameId", "Value", false) <p>Input 输入框的使用-DropDownList,ListBox</p>
@{
SelectListItem item;
List<SelectListItem> list = new List<SelectListItem>();
for (int i = 1; i < 5; i++)
{
item = new SelectListItem();
item.Text = "Text" + i;
item.Value = "Value" + i;
item.Selected = (i == 2);
list.Add(item);
}
} @Html.DropDownList("NameId", list) @Html.ListBox("NameId", list) <p>表单的Get提交</p>
@using (Html.BeginForm("PostData", "Html", FormMethod.Get))
{
;
@Html.TextBox("UserNameGet")
;
@Html.Password("PasswordGet")
;
<input type="submit" value="SubmitButton" />
} <p>表单的Post提交</p>
@{
Html.BeginForm("PostData", "Html", FormMethod.Post);
} @Html.TextBox("UserNamePost") @Html.Password("PasswordPost") <input type="submit" value="SubmitButton" />
@{
Html.EndForm();
}
生成效果整体图
运行程序,效果图如下

下面我们对照 html源码,看看生成的html源码。
@Html.AntiForgeryToken
@Html.AntiForgeryToken()
生成html源码
<input name="__RequestVerificationToken" type="hidden"
value="CfDJ8BY1L_vJWwdCoEd8zvMkT6Ca2EhsAoVtLk7OoRlpqsHH2ZVCcF2Wl-PaJgsJbV4AgskGDgZ07-kyb1qIT-aW2wkaWPplsUAgdG8URhEskPJIZMDxGAAD5_H-1Iae9eoJ35NSNKMbWQosQM2Jn3idfGM">
@Html.ActionLink
@Html.ActionLink("LinkText", "RazorShow")
@Html.ActionLink("带控制器", "ActionName", "ControllerName")
@Html.ActionLink("带路由信息", "ActionName", new { id = 1, name = 3, age = 4, height = 5 })
<a href="/Html/ActionName/1?name=3&age=4&height=5">带路由信息</a>
@Html.ActionLink("链接", "action", new { id = 1, name = 3, age = 4, height = 5 },
new { @class = "classText", style = "width:200px", tt = "xxx" })
生成html源码

@Html.RouteLink
@Html.RouteLink("LinkText", new { action = "ActionName" })
@Html.RouteLink("LinkText", new { action = "ActionName", controller = "ControllerName" })
@Html.RouteLink("LinkText", new { action = "ActionName", id = 1 })
生成html源码

@Html.TextBox
@Html.TextBox("NameId")
@Html.TextBox("NameId", "Value")
@Html.TextBox("NameId", "Value", new { @class = "classText", @style = "width:200px", @tt = "xxx" })

@Html.Hidden
@Html.Hidden("NameId")
@Html.Hidden("NameId", "Value")

@Html.Password
@Html.Password("NameId")
@Html.Password("NameId", "Value")

@Html.CheckBox
@Html.CheckBox("NameId", true)
@Html.CheckBox("NameId", false)

@Html.RadioButton
@Html.RadioButton("NameId", "Value", true)
@Html.RadioButton("NameId", "Value", false)

@Html.DropDownList
@{
SelectListItem item;
List<SelectListItem> list = new List<SelectListItem>();
for (int i = 1; i < 5; i++)
{
item = new SelectListItem();
item.Text = "Text" + i;
item.Value = "Value" + i;
item.Selected = (i == 2);
list.Add(item);
}
}
@Html.DropDownList("NameId", list)

@Html.ListBox
@{
SelectListItem item;
List<SelectListItem> list = new List<SelectListItem>();
for (int i = 1; i < 5; i++)
{
item = new SelectListItem();
item.Text = "Text" + i;
item.Value = "Value" + i;
item.Selected = (i == 2);
list.Add(item);
}
}
@Html.ListBox("NameId", list)

@Html.BeginForm
@using (Html.BeginForm("PostData", "Html", FormMethod.Get))
{
;
@Html.TextBox("UserNameGet")
;
@Html.Password("PasswordGet")
;
<input type="submit" value="SubmitButton" />
}
<p>表单的Post提交</p>
@{
Html.BeginForm("PostData", "Html", FormMethod.Post);
}

图文ASP.Net MVC Razor页面中HtmlHelper帮助程序的写法的更多相关文章
- Asp.Net Core Razor页面中使用echarts展示图形
Asp.Net Core Razor页面中使用echarts展示图形 要在Razor页面中使用echarts显示图形,主要问题点在于如何将数据传递给js文件. 1,下载安装echarts库文件 首先引 ...
- ASP.NET Core Razor页面禁用防伪令牌验证
在这篇短文中,我将向您介绍如何ASP.NET Core Razor页面中禁用防伪令牌验证. Razor页面是ASP.NET Core 2.0中增加的一个页面控制器框架,用于构建动态的.数据驱动的网站: ...
- ASP.NET Core Razor页面 vs MVC
作为.NET Core 2.0发行版的一部分,还有一些ASP.NET的更新.其中之一是添加了一个新的Web框架来创建"页面",而不需要复杂的ASP.NET MVC.新的Razor页 ...
- ASP.NET没有魔法——ASP.NET MVC Razor与View渲染
对于Web应用来说,它的界面是由浏览器根据HTML代码及其引用的相关资源进行渲染后展示给用户的结果,换句话说Web应用的界面呈现工作是由浏览器完成的,Web应用的原理是通过Http协议从服务器上获取到 ...
- ASP.NET没有魔法——ASP.NET MVC Razor与View渲染 ASP.NET没有魔法——ASP.NET MVC界面美化及使用Bundle完成静态资源管理
ASP.NET没有魔法——ASP.NET MVC Razor与View渲染 对于Web应用来说,它的界面是由浏览器根据HTML代码及其引用的相关资源进行渲染后展示给用户的结果,换句话说Web应用的 ...
- ASP.NET MVC Razor语法
ASP.NET MVC Razor语法 (一) 关于_ViewStart.cshtml文件 使用Razor模板引擎的话,会自动生成一个_ViewStart.cshtml文件.事实上,_View ...
- ASP.NET MVC Razor视图引擎攻略
--引子 看下面一段MVC 2.0的代码. <%if (Model != null){%> <p><%=Model%></p><%}%>&l ...
- ASP.NET Core - Razor 页面简介
简介 随着ASP.NET Core 2 即将来临,最热门的新事物是Razor页面.在之前的一篇文章中,我们简要介绍了ASP.NET Core Razor 页面. Razor页面是ASP.NET Cor ...
- ASP.Net Core Razor 页面路由
在服务器端 Web 应用程序框架中,其中非常重要的设计是开发人员如何将URL与服务器上的资源进行匹配,以便正确的处理请求.最简单的方法是将 URL 映射到磁盘上的物理文件,在 Razor 页面框架中, ...
- ASP.NET Core - Razor 页面介绍
简介 随着ASP.NET Core 2 即将来临,最热门的新事物是Razor页面.在之前的一篇文章中,我们简要介绍了ASP.NET Core Razor 页面. Razor页面是ASP.NET Cor ...
随机推荐
- UI自动化测试框架:数据驱动
一.UI自动化框架介绍 测试框架使用了Po设计模式(Page Object),每一个页面用一个类来对应,这个类里面要实现所有核心页面元素的获取方法,类里面提供操作页面元素的所有方法. 这个框架实现几点 ...
- JXNU acm选拔赛 不安全字符串
不安全字符串 Time Limit : 3000/1000ms (Java/Other) Memory Limit : 65535/32768K (Java/Other) Total Submis ...
- 数字孪生技术结合GIS系统能在农业领域作出什么改变?
数字孪生技术和地理信息系统(GIS)是两个独立但高度互补的领域,它们的结合在农业领域具有巨大的潜力,可以带来巨大的改变.在这篇文章中,我们将讨论数字孪生技术和GIS系统如何协同作用,为农业带来创新和可 ...
- 37. 干货系列从零用Rust编写负载均衡及代理,负载均衡中try_files实现
wmproxy wmproxy已用Rust实现http/https代理, socks5代理, 反向代理, 静态文件服务器,四层TCP/UDP转发,七层负载均衡,内网穿透,后续将实现websocket代 ...
- Centos8 硬盘挂载
查看硬盘分区状况 fdisk -l 可以看到数据盘 /dev/vdb 大小为 10Gb,目前还没有进行分区. 对 /dev/vdb 资源盘进行分区 fdisk /dev/vdb //根据提示输入信息: ...
- OpenGL纹理转换谜团:纹理写入FRAMEBUFFER后的镜像现象
在OpenGL中,最近将一个 GL_TEXTURE_2D 纹理写入到 GL_FRAMEBUFFER ,然后从GL_FRAMEBUFFER读取为GL_TEXTURE_2D纹理后,发现GL_TEXTURE ...
- K8s和声明式编程
转载:原文链接 认识k8s之后,他的操作模式对我来说是一种很不错的体验.他提供了更接近现实世界的面向对象接口. 什么是k8s? Kubernetes(K8s)是一种开源容器编排平台,用于自动化部署.扩 ...
- 踩坑ffmpeg录制的mp4无法在浏览器上播放
前言 使用ffmpeg编译好的程序在电脑上进行音视频转换,可以参考这篇:<windows电脑FFmpeg安装教程手把手详解_windows安装ffmpeg>,而我们要做的是在游戏引擎中集成 ...
- 文心一言 VS 讯飞星火 VS chatgpt (174)-- 算法导论13.3 3题
三.用go语言,假设图13-5 和图13-6 中子α.β.γ.δ和ε的黑高都是k.给每张图中的每个结点标上黑高,以验证图中所示的转换能保持性质 5. 文心一言: 在Go语言中,你可以通过以下步骤来为图 ...
- 序列化性能测试:jdk和fastjson
序列化性能测试:jdk和fastjson 我开发一个认证授权框架时,需要添加数据库存储token或者会话,于是想测试使用jdk的blob存储解析快还是存储string的json序列化解析快,从而选择他 ...