`

学习 ASP.NET MVC (第五回)理论篇

阅读更多

通过 前几篇文章,我们通过ASP.NET MVC创建了一个简单的应用程序,学习了ASP.NET MVC的基本框架和工作流程。但是Demo中很多东西都是VS为我们自动生成的,比如View的html代码等。此文和大家一起学习一下ASP.NET MVC 中的Helper (辅助方法) --> HtmlHelperUrlHelper
何谓Helper,其实就是在View中为了实现一些灵活功能而写的方法组,主要的目的就是实现将界面与逻辑分离。

HtmlHelper

ASP.NET MVC提供了一个HtmlHelper用于生成Html标签和有数据绑定的Html标签。
1.ActionLink
其中最常用的就是Html.ActionLink。
ActionLink中的三个参数分别为:显示的文字,Action ,Controller 。其中Controller可以省略,省略时指向同一Controller下的Action。
---基本应用:

<% = Html.ActionLink( " Hello " , " Index " , " Home " ) %>

在UrlRouting规则为默认规则的情况下,它生成的HTML代码为:<a href="/">Hello</a>
---带有QueryString的写法:

<% = Html.ActionLink( " Hello " , " Index " , " Home " , new { page = 1 }, null ) %>

-------<a href="/?page=1">Hello</a>
如果连接中不涉及到action及controller就没有必要使用ActionLink,而是直接写HTML代码就可以了。<a href="#">Hello</a>
2.Html表单元素
(1) Form:
我们当然可以使用纯的Html代码:
<form action="/home/index" method="post"></form>
但是因为是在HTML的属性中,所以还是难以维护,ASP.NET MVC为我们提供了一个Helper,我们可以通过以下两种方式生成一个Form:

<% using(Html.BeginForm( " index " , " home " ,FormMethod.Post)){ %> 表单内容  
<% } %>

<% 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则以下代码:

<% = Html.TextBox( " t1 " ) %>

 

(3) 表单元素绑定
如果我们想要让上文中的t1初始时就有一个值:

<% = Html.TextBox( " t1 " , " Hello " ) %>

如果数据是从数据库中读取,即得到数据是从Action中获取的,那么我们可以在Action中使用ViewData传递。

Action:
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

分享到:
评论

相关推荐

    《精通Asp.Net MVC 第五版英文版》

    除了理论知识外,《精通Asp.Net MVC 第五版英文版》还可能涵盖了一些实战应用技巧,比如如何利用NuGet包管理器安装第三方库,如何通过Web API实现RESTful服务,以及如何部署应用程序到IIS等。这些技巧对于实际项目...

    ASP.NET MVC4 Web编程

    ASP.NET MVC4是一种基于微软.NET Framework的开源web应用程序框架,专为构建可维护性和测试性的动态网站而设计。它结合了MVC(Model-View-Controller)设计模式、ASP.NET的功能性和HTML5的新特性,提供了高效且灵活...

    一套通用的Easyui+asp.net mvc开发框架源码

    【标题】"一套通用的Easyui+asp.net mvc开发框架源码"揭示了这是一个用于构建Web应用程序的基础架构,结合了两种技术:Easyui和asp.net MVC5。Easyui是一个基于jQuery的用户界面库,提供了丰富的组件和主题,用于...

    asp.Net mvc4 实例

    5. **验证(Validation)**:ASP.NET MVC4提供强大的验证机制,包括客户端和服务器端验证。例如,可以使用DataAnnotations特性在模型上定义验证规则,如`Required`、`StringLength`等,然后在视图中自动应用这些规则...

    Pro ASP.NET MVC 5 Platform

    ### Pro ASP.NET MVC 5 平台知识点概览 #### 标题:Pro ASP.NET MVC 5 Platform - **核心内容**:本书旨在为没有 Web Forms 经验的 ASP.NET MVC 开发者提供一个深入理解 ASP.NET 平台的机会。 - **目标读者**:面向...

    Pro ASP.NET MVC 5 (英文pdf+源码)

    Pro ASP.NET MVC 5 APress, 2013 by Adam Free...这是第一本出版的 ASP.NET MVC5 英文版书籍 源码太大, 压缩后约 202M. 依章节分成5个各自独立的压缩包上传. Pro ASP.NET MVC 5 (source code)书附源码Part1( 02_08) ...

    精通ASP.NET MVC5

    ASP.NET MVC 5框架是微软ASP.NET Web平台的新进展。它提供了高生产率的编程模型,结合ASP.NET的全部优势,使代码架构更整洁,可进行测试驱动开发,并使程序有强大的可扩展性。 通过本书你将学到: 获得对ASP.NET MVC...

    ASP.NET MVC 5中文版

    ASP.NET MVC 5是微软开发的一个用于构建动态网站的开源框架,它结合了ASP.NET Web Forms和ASP.NET Web Pages的优点,引入了Model-View-Controller(MVC)设计模式,为开发者提供了更灵活、可测试的Web应用程序开发...

    asp.net mvc6源码

    ASP.NET MVC6在ASP.NET MVC5的基础上进行了重大改进,以适应现代Web开发的需求。 1. **跨平台支持**: ASP.NET MVC6最大的亮点之一就是跨平台能力。它基于.NET Core,这意味着开发者可以在Windows、Linux和macOS等...

    ASP.NET MVC5 bootstrap 小例子

    通过这个小例子,开发者可以学习到如何将现有的前端框架与ASP.NET MVC5相结合,创建一个功能丰富的Web应用,同时了解如何利用Bootstrap和jQuery DataTables提高界面的美观度和功能性。此外,这也是一种实践MVC设计...

    ASP.NET MVC 5高级编程(第5版)

    asp.net MVC5 高级编程,中文版本, PDF格式, 学习MVC相当不错!

    ASP.NET MVC 5高级编程 高清 带目录PDF(不含源代码)

    这本书“ASP.NET MVC 5高级编程”第五版,中文版,详细介绍了如何充分利用这一框架来开发复杂的Web应用。 在MVC模式中,“模型”负责业务逻辑和数据管理,它与数据库交互并处理业务规则。“视图”是用户看到和与之...

    Professional ASP.NET MVC 2

    《Professional ASP.NET MVC 2》是一本深入探讨ASP.NET MVC框架第二版的专业书籍,由Jon ...通过学习本书,读者可以系统地掌握ASP.NET MVC框架的各项技术和最佳实践,为构建高质量的Web应用程序打下坚实的基础。

    ASP.NET MVC 5高级编程 第五版

    《ASP.NET MVC 5高级编程 第五版》这本书详细介绍了该框架的高级用法和实践技巧。 在本书中,读者可以深入理解ASP.NET MVC 5的核心概念,如控制器、视图、模型绑定、过滤器、路由等。控制器是应用的业务逻辑中心,...

    Pro ASP.NET MVC 5 (source code)书附源码Part1( 02_08)

    Pro ASP.NET MVC 5 APress, 2013 by Adam Freeman 这是第一本出版的MVC5英文版书籍, 书籍可以在这里下 http://download.csdn.net/download/zengzhan/7074437 Pro ASP.NET MVC 5 (source code)书附源码Part1( 02_08)...

    ASP.NET MVC3 安装包

    5. **过滤器(Filters)**:过滤器机制在ASP.NET MVC3中被扩展,提供了更多的自定义可能性,如授权过滤器、异常过滤器等,可以全局或局部应用于控制器和操作方法。 6. **强类型视图**:ASP.NET MVC3鼓励使用强类型...

Global site tag (gtag.js) - Google Analytics