为了账号安全,请及时绑定邮箱和手机立即绑定

EF Core3.0 创建联合唯一索引、外键和条件索引

2020.10.10 14:21 857浏览
modelBuilder.Entity<MemberValueCard>(b =>
{
    b.OwnsOne(v => v.CardInfo);  //关联实体
    
    b.HasMany(v => v.MemberValueCardRecord)   
     .WithOne() 
     .HasForeignKey(nameof(MemberValueCardRecord.MemberCardId));  //创建外键
     
    b.HasIndex(v => new {v.VenueId,v.MemberId})
     .IsUnique();  //创建VenueId和MemberId的联合唯一索引
}


因为EF Core3.0不支持创建复杂对象的联合唯一索引,只能在Migrations中的UP函数中手写。

例如我需要将MemberValueCard中的VenueId和CardInfo中的Id创建联合唯一索引

migrationBuilder.CreateIndex(
    name: "IX_MemberValueCards_VenueId_CardInfo_Id",
    table: "MemberValueCards",
    columns: new[] { "VenueId", "CardInfo_Id" },
    unique: true
);







点击查看更多内容
0人点赞

若觉得本文不错,就分享一下吧!

评论

相关文章推荐

正在加载中
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消