在ASP.NET MVC开发模型中,由于将页面进行分层开发和呈现,开发人员在视图开发中通常是不推荐使用服务器控件的,因为在ASP.NET MVC页面是派生自ViewPage而ASP.NET WebForm是派生自System.Web.UI.Page的,同样为了规范ASP.NET MVC开发模型中页面的呈现和运行,使用服务器控件也不是最好的选择。为了能够方便的呈现控件和进行URL操作,ASP.NET MVC开发模型提供了Helper进行控件的呈现和URL操作,Helper包括HtmlHelper和UrlHelper。
1.HTML辅助工具(HtmlHelper)
由于在ASP.NET MVC开发模型中不推荐使用服务器控件,这就会提高ASP.NET页面编程的复杂性,使用HtmlHelper能够减少相应的编程复杂性。使用HtmlHelper能够创建HTML控件并进行控件编程,在MVC编程模型中,其执行过程很像传统的ASP的执行过程。使用HtmlHelper创建HTML控件的代码如下所示。
<h2>HtmlHelper</h2>
<p>
请输入用户名:<% =Html.TextBox("Name") %> //使用TextBox
<br/>
请输入密码:<% =Html.Password("Name") %> //使用Password
<br/>
<input id="Submit1" type="submit" value="submit" />
</p>
上述代码通过HtmlHelper创建了HTML控件,HtmlHelper方法创建控件只能够在Views中使用而不能在Controllers中使用。
注意:这里的TextBox控件和Password控件并不是ASP.NET控件,TextBox控件和Password控件分别生成的是HTML控件。
2.URL辅助工具(UrlHelper)
UrlHelper在MVC开发框架中比较简单,UrlHelper是用来呈现相应的URL路径的,UrlHelper使用的示例代码如下所示。
<h2>HtmlHelper</h2>
<p>
<%=Url.Action("Index","Beta") %>
</p>
上述代码通过使用UrlHelper的Action方法进行URL的呈现,在Action方法中,其参数分别为方法名和Controller,上述代码中用于显示BetaController中的Index页面URL