use*_*459 5 c# asp.net-mvc entity-framework ef-database-first entity-framework-6
首先,我是 MVC 的新手。
我有一个 Project 表,其中包含 ProjectID、ProjectNumber 和 ProjectDescription 字段。ProjectId 是 int 类型的 entityKey,ProjectNumber 需要是唯一约束。
如何在实体框架 6.1.3 中执行此操作?
在我的项目课上我有
public int ProjectID { get; set; }
[Index(IsUnique = true)]
[StringLength(200)]
public string ProjectNumber { get; set; }
public string ProjectDescription { get; set; }
Run Code Online (Sandbox Code Playgroud)
当我从模型生成数据库时,该字段在数据库中未设置为唯一。
我究竟做错了什么?
基于实体框架代码第一个唯一列中的答案
试试这个代码:
public int ProjectID { get; set; }
[Index("ProjectNumber_Index", IsUnique = true)]
[MaxLength(200)]
public string ProjectNumber { get; set; }
public string ProjectDescription { get; set; }
Run Code Online (Sandbox Code Playgroud)
并确保 SQL Server 中的字符串未设置为 nvarchar(MAX),否则您将看到 Entity Framework Code First 错误。