Asp.net Mvc Framework 八 (Helper)

简介: 本人已经疯了...快写完了而关掉浏览器丢失数据之事在此文章上发生了两次,所以本人倍加珍惜 这节讲 一下Asp.netMVC中的Helper 何谓Helper,其实就是在View中为了实现一些灵活功能而写的方法组 其实Asp.
本人已经疯了...快写完了而关掉浏览器丢失数据之事在此文章上发生了两次,所以本人倍加珍惜

这节讲 一下Asp.netMVC中的Helper
何谓Helper,其实就是在View中为了实现一些灵活功能而写的方法组

其实Asp.net MVC的View是Aspx的页面,本身可以声明定义方法,那为什么要有Helper呢
其实无非是将界面与逻辑分离,而且Asp.net MVC也并不只支持Aspx一种View,在扩展包中,也有Castle的NVelocity引擎和Boo所以,如果在Aspx中定义方法的话会影响其扩展性和可移植性.而且代码也不太好看.

UrlHelper的Action方法 用于生成一个超级链接,它的重载为
        public string Action(string actionName);
        public string Action(string actionName, object values);
        public string Action(string actionName, RouteValueDictionary valuesDictionary);
        public string Action(string actionName, string controllerName);
        public string Action(string actionName, string controllerName, object values);
        public string Action(string actionName, string controllerName, RouteValueDictionary valuesDictionary);

例如我在View中写Url.Action("Index","Home"),运行后则会生成/Home/Index这个地址
如果你的系统中的URL Routing规则总是变化的话这个Helper则是你必备之选.
     public   string  Encode( string  url);
这也是UrlHelper的一个方法 使用方法 如<%=Url.Encode("中文")%>功能与Server.UrlEncode相同,这里不多说了
如果你有特殊需要可以用3.0新特性,扩展方法来为UrlHelper来增加新的功能

HtmlHelper则是另一个常用之Helper
它是来生成HTML代码用的
eg.
<%= Html.ActionLink( " 首页 " , " index " , " Home " ) %>
则生成<a href="/Home/Index">首页</a>
重载方法有:
public   string  ActionLink( string  linkText,  string  actionName);
public   string  ActionLink( string  linkText,  string  actionName,  object  values);
public   string  ActionLink( string  linkText,  string  actionName, RouteValueDictionary valuesDictionary);
public   string  ActionLink( string  linkText,  string  actionName,  string  controllerName);
public   string  ActionLink( string  linkText,  string  actionName,  string  controllerName,  object  values);        public   string  ActionLink( string  linkText,  string  actionName,  string  controllerName, RouteValueDictionary valuesDictionary);
当然HTMLHelper的种类就比UrlHelper多得多了
比如有Button
<% = Html.Button( " name " , " value " , " onclick " %>

生成
< button  onclick ="onclick"  name ="name"  id ="name" > value </ button >

CheckBox:
<% = Html.CheckBox( " name " , " text " %>
生成
< input  value ="text"  name ="name"  type ="checkbox" > &nbsp; text

Form:
<% = Html.Form( " Home " , " Index " ,FormMethod.Post)  %>
生成
<form action="/Home" method="post">System.Web.Mvc.SimpleForm

</form>

当然还有类似于SubmitButton,Image这些方法,这里就不多讲了

注意一点Preview2中Html.Mailto方法有些Bug请尽量避免使用这个方法

吾生也有涯,而知也无涯,以有涯随无涯,殆己

附:
功能介绍还有几篇就写完了,争求意见,下面可以讲示例也可以讲对Asp.net MVC进行扩展,不知道大家想看什么,有兴趣的朋友可以回复一下,我做个参考

Asp.net Mvc Framework 系列
目录
相关文章
|
2月前
|
API C++ Windows
Visual C++运行库、.NET Framework和DirectX运行库的作用及常见问题解决方案,涵盖MSVCP140.dll丢失、0xc000007b错误等典型故障的修复方法
本文介绍Visual C++运行库、.NET Framework和DirectX运行库的作用及常见问题解决方案,涵盖MSVCP140.dll丢失、0xc000007b错误等典型故障的修复方法,提供官方下载链接与系统修复工具使用指南。
537 2
|
5月前
|
C++ Windows
.NET Framework安装不成功,下载`NET Framework 3.5`文件,Microsoft Visual C++
.NET Framework常见问题及解决方案汇总,涵盖缺失组件、安装失败、错误代码等,提供多种修复方法,包括全能王DLL修复工具、微软官方运行库及命令行安装等,适用于Windows系统,解决应用程序无法运行问题。
356 3
|
2月前
|
开发框架 安全 .NET
Microsoft .NET Framework 3.5、4.5.2、4.8.1,适用于 Windows 版本的 .NET,Microsoft C Runtime等下载
.NET Framework是Windows平台的开发框架,包含CLR和FCL,支持多种语言开发桌面、Web应用。常用版本有3.5、4.5.2、4.8.1,系统可同时安装多个版本,确保软件兼容运行。
580 0
Microsoft .NET Framework 3.5、4.5.2、4.8.1,适用于 Windows 版本的 .NET,Microsoft C Runtime等下载
|
3月前
|
C++
提示缺少.NET Framework 3.5 安装错误:0x80070002、0x800F0950\0x80004002
.NET Framework常见问题及解决方法汇总,
475 0
|
5月前
|
C++ Windows
WindowsDLL修复专家,MSVCP**、DLL修复vcruntime**、DLL修复、`.Net Framework`缺失、DirectX类DLL修复、VC运行库修复
Windows DLL修复专家是一款专为解决因DLL文件缺失、版本错误导致的软件或游戏无法运行问题的系统工具。它支持一键扫描和修复各类DLL异常,涵盖MSVCP、vcruntime、.NET Framework、DirectX等多种常见问题。具备自动检测、备份还原功能,确保修复过程安全可靠。适用于软件报错、系统异常及新系统适配场景,降低用户手动修复门槛,提升系统稳定性与兼容性。
206 3
|
4月前
.NET Framework 3.5离线安装包合集下载
本文介绍了如何获取和安装.NET Framework运行库离线合集包。用户可通过提供的链接下载安装包,安装过程简单,按提示逐步操作即可完成。安装时可选择所需版本,工具会自动适配架构,无需手动判断,方便高效。
1630 0
使用的是.NET Framework 4.0,并且需要使用SMTP协议发送电子邮件
使用的是.NET Framework 4.0,并且需要使用SMTP协议发送电子邮件
182 1
|
12月前
|
监控 前端开发 API
一款基于 .NET MVC 框架开发、功能全面的MES系统
一款基于 .NET MVC 框架开发、功能全面的MES系统
338 5
|
开发框架 缓存 监控
NET Framework 到 .NET 5/6 的迁移是重大的升级
本文详细介绍了从 .NET Framework 4.8 迁移到 .NET 5/6 的过程,通过具体案例分析了迁移策略与最佳实践,包括技术栈评估、代码迁移、依赖项更新及数据库访问层的调整,强调了分阶段迁移、保持代码可维护性及性能监控的重要性。
194 3

热门文章

最新文章