首先,我是MVC的新手。
我有一个Project表,其中包含ProjectID,ProjectNumber和ProjectDescription字段。 ProjectId是int类型的entityKey,ProjectNumber需要是唯一约束。
如何在实体框架6.1.3中执行此操作?
在我的Project类中
public int ProjectID { get; set; }
[Index(IsUnique = true)]
[StringLength(200)]
public string ProjectNumber { get; set; }
public string ProjectDescription { get; set; }
当我从模型生成数据库时,该字段在数据库中未设置为唯一。
我做错了什么?
答案 0 :(得分:3)
基于Entity Framework code first unique column
中的答案试试这段代码:
public int ProjectID { get; set; }
[Index("ProjectNumber_Index", IsUnique = true)]
[MaxLength(200)]
public string ProjectNumber { get; set; }
public string ProjectDescription { get; set; }
确保SQL Server中的字符串未设置为nvarchar(MAX),否则您将看到Entity Framework Code First的错误。