Một nhu cầu chung khi tạo trang View là các bạn phải lặp đi lặp lại nhiều lần đoạn mã HTML. Việc lặp lại nhiều lần các phần tử HTML và các từ khóa Razor đôi khi gây cho bạn sự nhàm chán và dễ bị phát sinh lỗi. Và nghĩ xa hơn nữa, khi bạn cần thay đổi, bạn sẽ phải chỉnh lại ở rất nhiều chỗ. Thật may mắn là MVC framework cung cấp 1 cơ chế để giải quyết vấn đề này, gọi là Html Helper. Trong bài viết này, mình sẽ minh họa 2 cách tạo và sử dụng Html Helper.
Tạo dữ liệu ở Controller:
Inline Helper
Đây là cách đơn giản nhất và trực tiếp nhất để tạo 1 template. Nhưng hạn chế là chỉ sử dụng được trên 1 trang View.Tạo dữ liệu ở Controller:
public ActionResult InlineHelper() { var days = new List<string> { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" }; var fruit = new List<string> { "Banana", "Mango", "Apple" }; ViewBag.lstDay = days; ViewBag.lstFruit = fruit; return View(); }Tạo hàm Helper ở trang View:
@helper CreateList(List<string> list) { <ul> @foreach(var item in list) { <li>@item</li> } </ul> }Sử dụng:
<div class="title"> Days in week @CreateList(listDay) <div class="title"> Fruit @CreateList(listFruit)
Nhận xét
Đăng nhận xét