希望這種幫助ü....在Asp.Net MVC呈現佈局的各種方式。
方法1:
@{
var controller = HttpContext.Current.Request.RequestContext.RouteData.Values["Controller"].ToString();
string layout = "";
if (controller == "Admin")
{
layout = "~/Views/Shared/_AdminLayout.cshtml";
}
else
{
layout = "~/Views/Shared/_Layout.cshtml";
}
Layout = layout;
}
:控制佈局呈現由瀏覽文件夾的根目錄下使用_ViewStart文件
我們可以在_ViewStart文件通過使用下面的代碼更改佈局的默認渲染
方法2:從ActionResult返回佈局
我們還可以通過使用以下代碼從ActionResult返回佈局來覆蓋默認佈局渲染:
public ActionResult Index()
{
RegisterModel model = new RegisterModel();
//TO DO:
return View("Index", "_AdminLayout", model);
}
方法3:
@{
Layout = "~/Views/Shared/_AdminLayout.cshtml";
}
:與頂部
每個視圖我們也可以通過使用下面的代碼定義視圖上的佈局覆蓋默認佈局呈現定義佈局謝謝
http://stackoverflow.com/questions/5059323/asp-mvc-3-use-different-layouts-in-different-views – Adam 2013-04-05 14:45:39