Asp.Net 4.0新特性,输出更纯净的Html代码 ClientIDMode,ViewStateMode等
Html.RenderPartial("Profile", profile); %> <% } %> </table> 上面的代码,我将一个profile的List渲染成一个table。每一行定义了一个 Partial,用来渲染成一行。即使内容页不能与其他View分享,在一个View中使用 partial可以简化和减少HTML的标签数量。RenderPartial方法需要一个partial名 字和一个Model 参数。根据的partial名字用来搜索本地的partial文件,需遵循 下面的规则: 1 <Area>\<Controller>\<PartialName>.aspx and .ascx 2 <Area>\Shared\<PartialName>.aspx and .ascx 3 \<Controller>\<PartialName>.aspx and .ascx 4 \Shared\<PartialName>.aspx and .ascx 这些搜索类似于根据view的name搜索view,也可以使用<%= Html.Partial ("Profile", profile) %> 渲染。Profile文件即可以是一个ASCX文件,如果 必要也可以是一个aspx的文件。Profile的代码如下:
我们在View中如下渲染Profiles: <% Html.RenderPartial("Profiles", Model); %> 渲染效果如下: 3、Child Action Partial用来显示已经存在Model的信息时非常方便的。但是有时候View上显示 的数据源自其他Model。例如,登录控件可能会显示当前用户的名称和电子邮件, 但该View的主体部分与用户关系不大。可以使用ViewDataDictionary来传递没联 系的Model,但是我们可以使用 Child Action。对于在View中显示与主体没有多 大关系的信息,这里介绍一下Child Action的使用。下面举例子说明。 在模板页中显示当前的用户信息,当用户登录之后,显示用户名,邮箱之类的 信息,当用户没有登录,给出登录的连接。在模板页中加入下面代码:
LogOnWidget的代码如下,ChildActionOnly确保只能通过RenderAction调用此 方法。
用一个用户控件来显示这个Action的Model的信息,用户控件代码如下。
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |