艾伟_转载:学习 ASP.NET MVC (第五回)理论篇
本系列文章导航
学习 ASP.NET MVC (第一回)理论篇
学习 ASP.NET MVC (第二回)实战篇
学习 ASP.NET MVC (第三回)实战篇
学习 ASP.NET MVC (第四回)实战篇
学习 ASP.NET MVC (第五回)理论篇
通过前几篇文章,我们通过ASP.NET MVC创建了一个简单的应用程序,学习了ASP.NET MVC的基本框架和工作流程。但是Demo中很多东西都是VS为我们自动生成的,比如View的html代码等。此文和大家一起学习一下ASP.NET MVC 中的Helper (辅助方法) --> HtmlHelper和UrlHelper。
何谓Helper,其实就是在View中为了实现一些灵活功能而写的方法组,主要的目的就是实现将界面与逻辑分离。
HtmlHelper
ASP.NET MVC提供了一个HtmlHelper用于生成Html标签和有数据绑定的Html标签。
1.ActionLink
其中最常用的就是Html.ActionLink。
ActionLink中的三个参数分别为:显示的文字,Action ,Controller 。其中Controller可以省略,省略时指向同一Controller下的Action。
---基本应用:
在UrlRouting规则为默认规则的情况下,它生成的HTML代码为:Hello
---带有QueryString的写法:
-------Hello
如果连接中不涉及到action及controller就没有必要使用ActionLink,而是直接写HTML代码就可以了。Hello
2.Html表单元素
(1) Form:
我们当然可以使用纯的Html代码:
但是因为是在HTML的属性中,所以还是难以维护,ASP.NET MVC为我们提供了一个Helper,我们可以通过以下两种方式生成一个Form:
<%} %>
<%Html.BeginForm("index", "home", FormMethod.Post);%>表单内容
<%Html.EndForm(); %>
(2) 其他html标签:
ASP.NET MVC提供了多种表单元素的Helper。其中包括:TextBox(类似input type=text)、TextArea、DropDownList(select)、CheckBoxHidden、ListBox、Password、RadionButton。
如果我们想提供一个input type=text 它的name为t1则以下代码:
(3) 表单元素绑定
如果我们想要让上文中的t1初始时就有一个值:
如果数据是从数据库中读取,即得到数据是从Action中获取的,那么我们可以在Action中使用ViewData传递。
ViewData["text"]="Hello";
View:
<%=Html.TextBox("t1",ViewData["text"]) %>
UrlHelper
1.UrlHelper.Action
UrlHelper的Action方法 用于生成一个URL地址:
Controller下Index:<%=Url.Action(“Index”)%> --------index
Controller下Index:<%=Url.Action(“Index”,new{id=1})%> --------index?id=1
UsersController下Index:<%=Url.Action(“Index”,"Users")%> --------/Users/index
UsersController下Index: <%=Url.Action(“Index”,"Users",new{id=1})%> /Users/index?id=1
在View中写Url.Action("Index","Home"),运行后则会生成/Home/Index这个地址。
2.UrlHelper.Encode
这也是UrlHelper的一个方法 使用方法 如<%=Url.Encode("中文")%>,功能与Server.UrlEncode相同。
3.UrlHelper.Content
用于服务器路径转换为绝对路径。如:
<%=Url.Content("~/content/site.css") %>最后的结果为:/content/site.css
转载于:https://www.cnblogs.com/waw/archive/2011/08/29/2156993.html
艾伟_转载:学习 ASP.NET MVC (第五回)理论篇相关推荐
- 艾伟_转载:ASP.NET MVC数据验证
关于ASP.NET MVC的验证,用起来很特别,因为MS的封装,使人理解起来很费解.也可能很多人都在Scott Guthrie等人写的一本<ASP.NET MVC 1.0>书中,见过Ner ...
- 学习 ASP.NET MVC (第二回)实战篇
上篇简单的了解了ASP.NET MVC的基本概念和基本流程,接下来的几篇将通过简单的实例,来看看如何通过ASP.NET MVC创建应用程序.Demo很简单也很基础,高手绕过. 闲话少说,直接进入正 ...
- 艾伟_转载:ASP.NET模板引擎技术
以前听我朋友说起php的模板引擎技术的时候似懂非懂哪时感觉真的很强,一直在想asp.net有这种技术吗?我不知道我的理解是不是对的.其实 asp.net的模板引擎技术就是先建好一个静态的html页面我 ...
- 艾伟_转载:[一步一步MVC]第五回:让TagBuilder丰富你的HtmlHelper
本系列文章导航 [一步一步MVC]第一回:使用ActionSelector控制Action的选择 [一步一步MVC]第二回:还是ActionFilter,实现对业务逻辑的统一Authorize处理 [ ...
- 学习ASP.NET MVC系列 - 还有比这更简炼的吗?把复杂的事情变简单了,贡献啊!...
转自 学习ASP.NET MVC系列: 学习ASP.NET MVC(一)--我的第一个ASP.NET MVC应用程序 学习ASP.NET MVC(二)--我的第一个ASP.NET MVC 控制器 学习 ...
- 《从零开始学习ASP.NET MVC 1.0》-开天辟地入门篇
<从零开始学习ASP.NET MVC 1.0> 文章导航 (一) 开天辟地入门篇 (二) 识别URL的Routing组件 (三) Controller/Action 深入解析与应用实例 ( ...
- 从零开始学习ASP.NET MVC 入门
<从零开始学习ASP.NET MVC 1.0> 文章导航 (一) 开天辟地入门篇 (二) 识别URL的Routing组件 (三) Controller/Action 深入解析与应用实例 ( ...
- 学习ASP.NET MVC的资料推荐
学习ASP.NET MVC的资料推荐 1.微软官方ASP.NET MVC QuickStart文档.http://quickstarts.asp.net/previews/mvc/ ...
- 一步一步学习ASP.NET MVC 1.0创建NerdDinner 范例程序 - 强烈推荐!!!
一步一步学习ASP.NET MVC 1.0创建NerdDinner 范例程序 本文根据<Professional ASP.NET MVC 1.0>中微软牛人Scott Guthrie 提供 ...
最新文章
- Java RandomAccessFile writeLong()方法与示例
- 在小范围内[打表]验证哥德巴赫猜想(洛谷P1579题题解,Java语言描述)
- Java基础学习总结(146)——开发人员日志实践规范
- c 不安装oracle,安装oracle 10g 的艰难之旅
- [jQuery] Cannot read property ‘msie’ of undefined错误的解决方法
- linux ftp常用操作,linux 操作 ftp 常用命令
- Atitit 游戏的原理与概论attilax总结
- ECharts折线图自定义横坐标显示或隐藏
- 想要画漫画?掌握风格很关键!
- 烟台有线电视频率与节目表
- IP地址的规划和设计方法(二)
- c++ vs2015 播放音乐_索尼NW-A105HN对比飞傲M11,高解析音乐播放器之间有何差距?...
- 生物化学 药物设计与研发笔记:变构(Allostery)药物设计
- 实现不同的导航条,看直播app开发怎么做
- 使用Excel制作一个动态计划表
- html5 播放进度,获取并设置HTML5 Video的当前进度
- 网约车大战重来:易到回归降佣金,美团入局每单补贴超20元
- CRM系统在销售中的应用
- 计算机毕业设计springboot小组学习系统
- HBase 数量统计