如何首先在 EF6 代码中设置唯一的属性 [重复]

Posted

技术标签:

【中文标题】如何首先在 EF6 代码中设置唯一的属性 [重复]【英文标题】:How to set a Property unique in EF6 code first [duplicate] 【发布时间】:2015-11-24 13:47:51 【问题描述】:

我有这门课:

public class BSC

    public int BSCId  get; set; 

    public string BSCName  get; set; 

和配置类:

public class BSCConfig :EntityTypeConfiguration<BSC>

    public BSCConfig()
    
        Property(m => m.BSCName).HasMaxLength(50).HasColumnName("Category").IsRequired();

    

我想让这个属性唯一,但我没有 isUnique 或 Index 方法。

你能告诉我如何使这个属性独一无二吗?

【问题讨论】:

【参考方案1】:

使用HasColumnAnnotation

Property(m => m.BSCName).HasMaxLength(50).HasColumnName("Category").IsRequired()
  .HasColumnAnnotation("Index",
   new IndexAnnotation(new IndexAttribute("IX_X_Category")  IsUnique = true ));

【讨论】:

【参考方案2】:

您也可以使用数据注释来做到这一点。

[Index("IX_X_Category", 1, IsUnique = true)]
public string BSCName  get; set; 

【讨论】:

以上是关于如何首先在 EF6 代码中设置唯一的属性 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

在 Html Textarea 中设置 maxlength [重复]

sql2005中设置字段属性时,如何设标识列(自增1)和必须唯一

无法在对 jQueryLite 的 CSS 调用中设置重复属性

如何在mysql中设置唯一索引

如何在 XML 属性中设置换行符?

如何在 Mongoose 的所有模式中设置公共属性?