Bài 8 – Validation

Bài 7 – Bổ sung chức năng tìm kiếm
Bài 6 – Add a new field and update database
Bài 5 – SQL Server LocalDB
Bài 4 – Add a model
Bài 3 – Add a view
Bài 2 – Add Controllers
Bài 1 – Tạo dự án mới ASP.NET Core MVC 1.1

Keeping things DRY

ASP.NET MVC khuyến khích lập trình viên viết(cài đặt) chức năng chỉ một lần và áp dụng cho toàn ứng dụng. Điều này tối ưu được việc viết mã, giảm lỗi phát sinh, dễ dàng để test và cả việc bảo trì cũng dễ dàng thuận lợi.

Validation hỗ trợ bởi MVC và Entity Framework Core Code First là một tiêu biểu của nguyên tắc lập trình (không lặp lại mã) DRY. Lập trình viên chỉ cần chỉ ra các thiết lập VALIDATION ở một nơi ở MODEL Classes và sau đó các thiết lập này thiết lập ràng buộc cho toàn ứng dụng.

Adding validation rules to the movie model

Mở file Movie.cs và thiết lập các DataAnnotation sau để thiết lập các ràng buộc dữ liệu. Lưu ý: sử dụng namesapce System.ComponentModel.DataAnnotations;

8

Giải thích một số Annotations đã sử dụng cho thiết lập DATA VALIDATION

[StringLength(60, MinimumLength = 3)]
-> Thiết lập ràng buộc cho trường dữ liệu: tối thiểu nhập 3 và tối đa là 60 ký tự

[Required]
-> Yêu cầu phải nhập cho trường dữ liệu (không được để rỗng)

[Display(Name = “Release Date”)]
-> Đổi lại tên cột hiển thị của trường dữ liệu

[DataType(DataType.Date)]
-> Thiết lập kiểu dữ liệu của trường dữ liệu

[Range(1, 100)]
-> Giá trị của trường dữ liệu nằm trong khoảng (phạm vi) chỉ ra bởi Range

[RegularExpression(@”^[A-Z]+[a-zA-Z”-‘\s]*$”)]
-> Dùng RegularExpression để thiết lập ràng buộc dữ liệu theo mẫu (Pattern)

[DisplayFormat(DataFormatString = “{0:yyyy-MM-dd}”, ApplyFormatInEditMode = true)] public DateTime ReleaseDate { get; set; }
-> Định dạng dữ liệu hiển thị

9

Validation Error UI in MVC

  • Chạy ứng dụng và truy cập Movies Controller.
  • Click Create New để add thêm movie mới. Điền dữ liệu vào form với các giá trị không hợp lệ, ngay lập tức jQuery client phát hiện lỗi và hiển thị thông báo lỗi như hình sau: