Thủ tục 1: Kiểm soát Layouts vẽ bằng cách sử dụng tập tin _ViewStart trong thư mục gốc của thư mục Views
Phương pháp này là cách đơn giản nhất cho người mới bắt đầu để kiểm soát Layouts đang hiển thị trong ứng dụng ASP.NET MVC của bạn. Chúng ta có thể xác định controller và render Layouts như par controller, để làm điều này chúng ta có thể viết code của chúng ta trong file _ViewStart trong thư mục gốc của thư mục Views. Sau đây là một ví dụ cho thấy làm thế nào nó có thể được thực hiện.
@{
var controller = HttpContext.Current.Request.RequestContext.RouteData.Values["Controller"].ToString();
string cLayout = "";
if (controller == "Webmaster") {
cLayout = "~/Views/Shared/_WebmasterLayout.cshtml";
}
else {
cLayout = "~/Views/Shared/_Layout.cshtml";
}
Layout = cLayout;
}
Thủ tục 2: Set Layout bởi Trở về từ ActionResult
Một sự các tính năng tuyệt vời của ASP.NET MVC là, chúng ta có thể ghi đè lên vẽ bố trí mặc định bằng cách trả lại bố trí từ ActionResult. Vì vậy, đây cũng là một cách để render Layout khác nhau trong ứng dụng ASP.NET MVC của bạn. Sau mẫu mã cho thấy làm thế nào nó có thể được thực hiện.
public ActionResult Index()
{
SampleModel model = new SampleModel();
//Any Logic
return View("Index", "_WebmasterLayout", model);
}
Thủ tục 3: View - Giao diện khôn ngoan (Bằng việc xác định diện trong mỗi quan điểm trên đầu)
ASP.NET MVC cho chúng ta như một lớn tính năng & faxibility để ghi đè lên vẽ bố trí mặc định bằng cách xác định bố trí trên màn hình. Để thực hiện điều này, chúng tôi có thể viết mã của chúng tôi theo cách sau trong mỗi Chế độ xem.
@{
Layout = "~/Views/Shared/_WebmasterLayout.cshtml";
}
Thủ tục 4: Đặt tập tin _ViewStart trong mỗi thư mục
Đây là một cách rất hữu ích để thiết lập Layouts khác nhau cho mỗi bộ điều khiển trong ứng dụng ASP.NET MVC của bạn. Nếu chúng ta muốn thiết lập Layout mặc định cho mỗi thư mục hơn chúng ta có thể làm điều này bằng cách đặt file _ViewStart vào mỗi thư mục với thông tin Layout cần thiết như hình dưới:
@{
Layout = "~/Views/Shared/_WebmasterLayout.cshtml";
}
Nguồn
2017-08-29 05:28:32
Hãy cho chúng tôi thấy mã của bạn. – SLaks
Bạn có thấy từ 'null' trong trang được hiển thị không? – SLaks
@slaks - không nhìn thấy ở trên – iwayneo