快速业务通道

Asp.Net 4.0新特性,输出更纯净的Html代码 ClientIDMode,ViewStateMode等

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-20

我们在Asp.net mvc的view开发过程中,如果不注意可能会写大量的重复的代 码。这篇文章介绍3种方式重构View的代码,来减少View中的重复代码。

1、母板页

在Asp.net mvc中保留了母板页的使用,我们可以使用母板页对我们的站点进 行布局。看下面母板页的代码:

<%@ Master Language="C#"  Inherits="System.Web.Mvc.ViewMasterPage" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
   <title><asp:ContentPlaceHolder ID="TitleContent"  runat="server" /></title>
   <link href="http://www.cnblogs.com/Content/Site.css"  rel="stylesheet" type="text/css" />
</head>
<body>
   <div class="page">
     <div id="header">
       <div id="title">
         <h1>My MVC Application</h1>
       </div>
       <div id="logindisplay">
         <%= Html.Action("LogOnWidget", "Account") %>
       </div>
       <div id="menucontainer">
         <ul id="menu">
           <li><%= Html.ActionLink("Home", "Index", "Home")% ></li>
           <li><%= Html.ActionLink("Profiles", "Index",  "Profile")%></li>
           <li><%= Html.ActionLink("About", "About", "Home")% ></li>
         </ul>
       </div>
     </div>
     <div id="main">
       <asp:ContentPlaceHolder ID="MainContent"  runat="server" />
       <div id="footer"></div>
     </div>
   </div>
</body>
</html>

在Asp.net mvc中使用母板页和Web Form中类似,需要定义 ContentPlaceHolder,加上使用一些常用的HTML标签进行布局。 当多个页面都有 同样的内容的时候,使用母板页是非常有用的。

2、Partial

Partial类似于Web Form中的用户控件。用它来渲染成内容页,使用Partial最 大的好处是这些代码段定义在View页面,而不是代码中。下面举例说明:

渲染partial非常简单,我们可以在父View中使用RenderPartial和Partial方 法,Profiles的代码如下,在 Profiles中使用RenderPartial渲染Profile。

<%@ Control Language="C#"  Inherits="System.Web.Mvc.ViewUserControl<IEnumerable<Profile>& gt;" %>
<h2>Profiles</h2>
<table>
   <tr>
     <th>Username</th>
     <th>First name</th>
     <th>Last name</th>
     <th>Email</th>
   </tr>
   <% foreach (var profile in Model) { %>
     <%

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号