【问题标题】:How to avoid duplicating ASP.NET MVC 3 Controller Actions returning View/PartialView如何避免重复返回 View/PartialView 的 ASP.NET MVC 3 控制器操作
【发布时间】:2012-09-05 15:28:55
【问题描述】:

我有一堆返回视图的控制器操作。现在我还需要为每个操作返回 PartialView,因为我想让我的程序集在具有父视图的父应用程序中可重用(我将在父视图中使用 Html.Action)。复制每个动作以返回部分视图有点麻烦。在父视图中嵌套控制器操作时,是否有更简洁的方法来禁用布局?

【问题讨论】:

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


    【解决方案1】:

    您可以在您的操作方法中检查ControllerContext.IsChildAction,如果为真,则返回不同的视图。

    if (ControllerContext.IsChildAction)
    {
        return PartialView("_Index", model)
    }
    else 
    {
        return View("Index", model)
    }
    

    如果它对您的应用程序有意义,请在您的完整视图中加载部分视图,以便您可以重复使用标记。

    【讨论】:

    • 哦,那真是太好了!因此,我可以创建一个特殊的 Controller 基类,并为其添加一个 PossiblePartialView(string view, object model) 方法来执行此操作。我会试试看。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-16
    • 1970-01-01
    • 2017-04-19
    • 1970-01-01
    • 1970-01-01
    • 2010-09-18
    相关资源
    最近更新 更多