在_Layout使用Html.RenderAction的问题-MVC3(Razor)问题

当你在layout里使用Html.RenderAction加载局布页面的时候,直接进入死循环。

 @{

                    Html.RenderAction("Index", "Status");

                }

 

 

主要问题,在Index的View, 我在Index Action 返回的是VIEW,RenderAction是在_Layout.cshtml中运行,每一个View都会调用_layout.cshtml,调用时候Action又调用View, View又调用_layout.cshtml,所以就进入了死循环。

两种解决方案:

1、Index Action不返回View,而是PartialView

public PartialViewResult Index()

        {

          //dosomething

           return PartialView();   

        }

2、在Index 的View中加上 @{ layout=null;}

这两种方法都有效。

 

你可能感兴趣的:(action)