EF Code-First - Thuộc tính StringLength
Thuộc tính StringLength trong Entity Framework
Thuộc tính StringLength (StringLength Attribute) có thể áp dụng cho các thuộc tính kiểu string
của một lớp thực thể.
Nó chỉ định số ký tự tối đa được phép cho thuộc tính chuỗi, và thiết lập kích thước của một cột tương ứng (kiểu nvarchar
trong SQL Server) trong cơ sở dữ liệu.
using System.ComponentModel.DataAnnotations;
public class Student
{
public int StudentID { get; set; }
[StringLength(50)]
public string StudentName { get; set; }
}
Như bạn có thể thấy trong đoạn mã trên, chúng tôi đã áp dụng thuộc tính StringLength
cho một thuộc tính StudentName
. Vì vậy, EF sẽ tạo cột StudentName
có kiểu dữ liệu là nvarchar(50)
trong cơ sở dữ liệu, 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 StringLength
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 đặt giá trị chuỗi thành hơn 50 ký tự, thì EF 6 sẽ ném ra ngoại lệ System.Data.Entity.Validation. DbEntityValidationException
.