Hôm nay, gửi đến cả nhà những tính năng của ASP.NET MVC từ version 3 đến version 5; nhằm cô đọng lại những tính năng cho từng phiên bản, những cải thiện mới cho developer thông qua từng phiên bản ASP.NET MVC ASP.NET MVC3 So với phiên bản ASP.NET MVC2 thì tính năng mới được hỗ trợ thêm HTML5 và CSS3; tính năng này chỉ hỗ trợ cho những trình duyệt mới; Cải thiện về Model validation; Hỗ trợ 2 View Engine: RAZOR, ASPX, kể cả Open source trong khi ASP.NET MVC2 chỉ có ASPX; Controller được cải tiến hơn như thuộc tính ViewBag và kiểu ActionResult; Cải thiện Dependency Injection với IDpendencyResolver (có 2 phần: DependencyResolver và interface IDpendencyResolver)trong ASP.NET MVC3; đây là lớp thực thi mô hình Service Locator, cho phép framework gọi DIContainer khi cần làm việc với 1 lớp thực thi từ 1 kiểu cụ thể Cách tiếp cận với JavaScript được hạn chế; Hỗ trợ caching trong Partial page;
Trang 1ThS Nguyễn Nghiệm
0913.745.789 nghiemn@fpt.edu.vn songlong2k@gmail.com
Trang 3 Razor là ngôn ngữ ngắn gọn, rỏ ràng và hữu ích cho phép bạn tạo ra các giao diện ứng dụng ASP.NET MVC
Trong khối lệnh @{…} là mã C# hoặc VB.NET trộn HTML
Trang 6 Helper là các thành phần sinh giao diện web phùhợp buộc dữ liệu với model để duy trì thông tin trên các thành phần đó.
Đơn giản việc viết mã sinh giao diện
Liên kết
Form
Sinh giao diện từ model
Kiểm lỗi
Trang 7 @Html.ActionLink() được sử dụng để sinh liên kết
@Html.ActionLink() nhận một số tham số:
linkText – nhãn của liên kết
actionName – tên action
routeValues – tập các giá trị truyền đến action.
controllerName – tên controller
htmlAttributes – tập thuộc tính HTML của thể <a>
Ví dụ:
Liên kết chứa ảnh
Trang 8 Duy trì dữ liệu các trường form
Trang 17ThS Nguyễn Nghiệm
0913.745.789 nghiemn@fpt.edu.vn songlong2k@gmail.com
Trang 18 Dựa vào các đặc điểm của thuộc tính trong lớpmodel để sinh ra giao diện người dùng.
Sinh các control tường minh
Sinh các control ngầm định
Trang 19 Chỉ định loại control đối với các thuộc tính
Trang 20Kiểu của Model
Sinh <input type=“text” name=“Id” id=“Id”> từ thuộc tính Id của Model Sinh <label for=“Id”>Mã
sinh viên</label>
Trang 21 Tự sinh loại control phù hợp với đặc điểm của
thuộc tính của lớp model
Html.EditorFor(m=>m.Property) Sinh 1 control cho 1 thuộc tính.
Html.EditorForModel() Sinh toàn form theo các thuộc tính của Model
Html.Editor(object) Sinh toàn form theo các thuộc tính của Object
đặt trong ViewBag
Trang 24 @Html.DisplayNameFor (m=> m.Property)
Hiển thị tên của thuộc tính Property
@Html.DisplayFor (m=>m.Property)
Hiển thị giá trị cho thuộc tính Property
Trang 25 Bên cạnh các helper dựng sẵn, bạn có thể tạo
cho mình các helper có mục đích cho riêng mình
Trang 28Qui ước Lớp được mở rộng
Sử dụng helper
mới định nghĩa Control sinh ra
Trang 32 Base 64, MD5, Ascii
RadioButtonList, Image, File