在Asp.Net mvc中的视图内渲染视图

时间:2016-09-01 10:19:40

标签: c# asp.net asp.net-mvc asp.net-mvc-4

如何在另一个视图中渲染完整的视图(非局部视图)?

场景,我有不同的控制器,并希望渲染完全相同的视图,而其他控制器在不同的布局下已经存在。

我在Home Controller中有Wishlist页面,其中显示了已添加产品的列表,当用户登录时,当我点击愿望清单时,它还会在用户登录时显示导航。

我该怎么做?

2 个答案:

答案 0 :(得分:30)

没有多少开发人员知道这一点,但您可以使用RenderPage,它是专门为此目的而设计的(在另一个视图中呈现MVC视图)

// Sample
Xrm.Page.ui.setFormNotification("You have to complete required steps", "INFO", "messageId");

答案 1 :(得分:11)

您仍然可以使用自己的控制器创建或使用部分视图,并使用RenderAction()

[ChildActionOnly]
public ActionResult ActionPartialView(string p1)

{
    //code...

    return PartialView(); 
}

上面的代码可以在任何控制器中,它自己的控制器,只需用剃须刀在控制器中调用它。

剃刀:

@{ Html.RenderAction("Index", "Home"); }

希望有所帮助