zoukankan      html  css  js  c++  java
  • ef core中如何实现多对多的表映射关系

    文档:https://docs.microsoft.com/en-us/ef/core/modeling/relationships

     class MyContext : DbContext
      {
          public DbSet<Post> Posts { get; set; }
          public DbSet<Tag> Tags { get; set; }
     
          protected override void OnModelCreating(ModelBuilder modelBuilder)
          {
              modelBuilder.Entity<PostTag>()
                  .HasKey(t => new { t.PostId, t.TagId });
     
             modelBuilder.Entity<PostTag>()
                 .HasOne(pt => pt.Post)
                 .WithMany(p => p.PostTags)
                 .HasForeignKey(pt => pt.PostId);
     
             modelBuilder.Entity<PostTag>()
                 .HasOne(pt => pt.Tag)
                 .WithMany(t => t.PostTags)
                 .HasForeignKey(pt => pt.TagId);
         }
     }
     
     public class Post
     {
         public int PostId { get; set; }
         public string Title { get; set; }
         public string Content { get; set; }
     
         public List<PostTag> PostTags { get; set; }
     }
     
     public class Tag
     {
         public string TagId { get; set; }
     
         public List<PostTag> PostTags { get; set; }
     }
     
     public class PostTag
     {
         public int PostId { get; set; }
         public Post Post { get; set; }
     
         public string TagId { get; set; }
         public Tag Tag { get; set; }
     }
  • 相关阅读:
    hdu 2222 Keywords Search
    Meet and Greet
    hdu 4673
    hdu 4768
    hdu 4747 Mex
    uva 1513 Movie collection
    uva 12299 RMQ with Shifts
    uva 11732 strcmp() Anyone?
    uva 1401
    hdu 1251 统计难题
  • 原文地址:https://www.cnblogs.com/sky-net/p/8648834.html
Copyright © 2011-2022 走看看