代码之家  ›  专栏  ›  技术社区  ›  Rob West

如何在ASP.NET MVC中控制局部视图的条件显示

  •  6
  • Rob West  · 技术社区  · 16 年前

    在我们的标准web表单ASP.NET解决方案中,母版页中通常有一系列用户控件,并确定它们是否显示在代码隐藏中。在ASP.NET MVC中实现相同目标的最佳方法是什么?

    很明显,您可以将if语句放在母版页或部分视图中,但这让我觉得很混乱,并且打破了将业务逻辑排除在视图之外的原则。它还需要将必要的信息放入所有视图模型中,或者从一个基本控制器继承,对于如此简单的东西来说,这似乎是一个很大的麻烦。

    2 回复  |  直到 10 年前
        1
  •  3
  •   user151323 user151323    16 年前

    打破了将业务逻辑排除在视图之外的原则

    至于关注点的清晰分离,是的,WebForms似乎可以做到这一点,但它是对底层机制的巨大抽象。通常,它会导致业务逻辑位于代码后面,也就是说,位于表示层,其中业务逻辑所属的并不比它所属的视图多。

        2
  •  1
  •   Rajeesh    16 年前

    您可以通过创建一个Html扩展方法来避免视图中混乱的“If”语句,就像我在最近的文章中提到的那样 http://www.rajeeshcv.com/2010/01/asp-net-mvc-conditional-rendering-partial-views/

    谢谢