【问题标题】:MVC Project Design, pros and cons of re-using Partial ViewsMVC 项目设计,复用局部视图的优缺点
【发布时间】:2012-09-10 00:03:19
【问题描述】:

我有一个关于如何在项目中使用可重用局部视图的利弊问题。

在第一个示例中,我有一个在所有视图之间使用的布局。在布局中,我有一个使用Html.RenderAction("Index", "Header") 调用的局部视图。此标头会根据用户是否登录而更改,并且会在每个视图上呈现。

在第二个示例中,我有一个在所有视图之间使用的静态布局。但是,在此布局中没有调用局部视图。 Header 部分视图在每个视图上都被调用,并且与第一个示例基本相同(根据用户是否登录等进行更改)

哪种方法更好,一种方法还是另一种方法正确?各有优劣?

【问题讨论】:

  • 但是,在这个布局中没有调用局部视图。每个视图都在调用 Header 部分视图... 这不是自相矛盾吗?
  • 标题部分视图是在实际视图本身上调用的,而不是从布局视图中调用的。

标签: asp.net-mvc asp.net-mvc-3 partial-views


【解决方案1】:

背后的主要思想之一是不重用代码。因此,考虑到这一点,您应该在您的_Layout 文件中包含您的Header 代码。这样它就不会在每个View 中重新输入,如果您需要删除它或添加路由值等,您不必更新每个拥有它的View

这方面的一个例子是默认项目中的_LogOnPartial。在_Layout 中,它由@Html.Partial("_LogOnPartial") 调用,_LogOnPartial 视图包含显示LogOn or RegisterWelcome back... 的逻辑语句。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多