EF Code-First - Thuộc tính Maxlength
Thuộc tín MaxLength trong Entity Framework
Thuộc tính MaxLength (MaxLength Attribute) có thể áp dụng cho một hoặc nhiều thuộc tính trong một lớp thực thể.
Nó chỉ định độ dài tối đa của giá trị dữ liệu được phép cho một thuộc tính và thiết lập kích thước của một cột tương ứng trong cơ sở dữ liệu.
Nó có thể áp dụng cho các thuộc tính kiểu string
hoặc byte[]
của một thực thể.
using System.ComponentModel.DataAnnotations;
public class Student
{
public int StudentID { get; set; }
[MaxLength(50)]
public string StudentName { get; set; }
}
Trong ví dụ trên, khai báo MaxLength(50)
áp dụng trên thuộc tính StudentName
chỉ định rằng giá trị của thuộc tính StudentName
không thể dài hơn 50 ký tự.
Điều này sẽ tạo một cột StudentName
có kích thước nvarchar(50)
trong cơ sở dữ liệu SQL Server, như được hiển thị bên dưới.
Entity Framework cũng xác nhận giá trị của một thuộc tính MaxLength
cho thuộc tính nếu bạn gán giá trị vượt kích thước đã chỉ định.
Ví dụ: nếu bạn gán giá trị chuỗi dài hơn 50 ký tự, thì EF 6 sẽ ném ra ngoại lệ System.Data.Entity.Validation. DbEntityValidationException
.