在模型級別定義具有唯一鍵的實體


使用asp.net 5實體框架7,我想在模型級別定義一個具有唯一鍵約束的字段。我不是在談論主鍵。我相信EF 6曾經是這樣的:

    [Key]
    public int Id{ get; set; }

    [Index("IX_UserName", 1, IsUnique = true)]
    public string UserName {get; set;}

一般承認的答案

您可以在OnModelCreating覆蓋中配置它。請參閱http://ef.readthedocs.org/en/latest/modeling/configuring.html#indexes

例:

class MyContext : DbContext
{
    public DbSet<Blog> Blogs { get; set; }

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.Entity<Blog>()
            .Index(b => b.Url)
            .Unique();
    }
}




許可下: CC-BY-SA
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因