有没有办法在EF 6.0中定义备用键

时间:2019-09-12 21:56:03

标签: c# entity-framework-6

我有一个模型,需要为ClaimSetAuthorizationStrategy生成唯一密钥:

public class ClaimSetResourceClaim {
    [Key]
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    public int ClaimSetResourceClaimActionAuthorizationStrategyOverrideId { get; set; }

    [Required]
    [Index(IsUnique = true, Order = 1)]
    public ClaimSet ClaimSet { get; set; }

    [Required]
    [Index(IsUnique = true, Order = 2)]
    public AuthorizationStrategy AuthorizationStrategy { get; set; }
}

public class ClaimSet {
    [Key]
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    public int ClaimSetResourceClaimActionAuthorizationId { get; set; }
    [StringLength(255)]
    public string RuleSetName { get; set; }
}

public class AuthorizationStrategy {
    [Key]
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    public int AuthorizationStrategyId { get; set; }

    [StringLength(255)]
    [Required]
    public string DisplayName { get; set; }

    [StringLength(255)]
    [Required]
    public string AuthorizationStrategyName { get; set; }
}

modelBuilder.Entity<ClaimSetResourceClaim>().HasIndex(x => new { x.ClaimSet , x.AuthorizationStrategy }).IsUnique();

,但是在进行添加迁移时抛出错误,说序列不包含匹配元素

0 个答案:

没有答案