文档: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; }}

转载于:https://www.cnblogs.com/sky-net/p/8648834.html

ef core中如何实现多对多的表映射关系相关推荐

  1. [小技巧]EF Core中如何获取上下文中操作过的实体

    原文地址:https://www.cnblogs.com/lwqlun/p/10576443.html 作者:Lamond Lu 源代码:https://github.com/lamondlu/EFC ...

  2. 第五节:EF Core中的三类事务(SaveChanges、DbContextTransaction、TransactionScope)

    一. 说明 EF版本的事务介绍详见: 第七节: EF的三种事务的应用场景和各自注意的问题(SaveChanges.DBContextTransaction.TransactionScope). 本节主 ...

  3. EF Core中高效批量删除、更新数据的Zack.EFCore.Batch发布三个新特性

    Zack.EFCore.Batch是一个支持在Entity Framework Core中高效删除和更新数据的开源库.我们知道,EF Core中不支持高效的删除和更新数据,所有的更新和操作都是逐条数据 ...

  4. EF Core中避免贫血模型的三种行之有效的方法(翻译)

    [Paul Hiles: 3 ways to avoid an anemic domain model in EF Core :https://www.devtrends.co.uk/blog/3-w ...

  5. EF Core 中实现 动态数据过滤器

    前言 在项目开发中,我们很多时候都会设计  软删除.所属用户 等等一系列字段 来方便我们在业务查询的时候进行各种过滤 然后引申的问题就是: 在业务查询的时候,我们要如何加上这些条件?或者动态禁用某些查 ...

  6. java long 对应mybati类型_修改 mybatis-generator 中数据库类型和 Java 类型的映射关系...

    使用 mybatis-generator 发现数据库类型是 tinyint(4) , 生成 model 时字段类型是 Byte ,使用的时候有点不便 数据库的类型和 Model 中 Java 类型的关 ...

  7. EF Core中关于System.Linq.Dynamic.Core的使用(转载)

    项目中经常用到组合条件查询,根据用户配置的查询条件进行搜索,拼接SQL容易造成SQL注入,普通的LINQ可以用表达式树来完成,但也比较麻烦.有个System.Linq.Dynamic.Core用起来比 ...

  8. EF CORE 一对多、多对多添加、修改

    创建.net core 控制台应用程序: 项目文件结构: 添加如下NuGet包: Microsoft.EntityFrameworkCore Microsoft.EntityFrameworkCore ...

  9. EF Core一对多和多对多

    1.Model配置 Entity Framework Core 提供了两种方式 A.使用 fluent API 配置模型 可在派生上下文中覆写 OnModelCreating 方法,并使用 Model ...

最新文章

  1. 我们无法更新系统保留的分区_「图」Windows 10更新再遇尴尬:无法执行系统恢复点...
  2. pythonloop循环结构_python - tensorflow,tf.while_loop:这两个结构没有相同的嵌套结构 - SO中文参考 - www.soinside.com...
  3. Android项目创建欢迎页
  4. 算法笔记 1 31 chapter4
  5. 全字符微信名 php,PHP方法处理微信昵称特殊符号过滤
  6. 【线性代数公开课MIT Linear Algebra】 第二十三课 微分方程与exp(At)
  7. 有趣的灵魂百里挑一,Linux同学你低下头干嘛,起来说下这个问题。
  8. 毫秒级从百亿大表任意维度筛选数据,是怎么做到的…
  9. php字符不可选状态,php – mailto不可读的字符 – unicode
  10. 利用if...else if....else循环语句编程
  11. realtek audio console无法连接rpc服务_笔记本网络连接图标不见了怎么办?
  12. node.js 处理 http 请求
  13. readlink()不能读取硬链接的目标
  14. 需要实战项目的看过来: 黑马最新java《十次方》社交项目 请仔细看!
  15. QChart修改标题颜色,修改X轴Y轴字体颜色
  16. 现代信息技术的特点和趋势
  17. 云计算与网络安全:无代理安全防护更出色
  18. ubuntu下编写C语言程序
  19. python小白从哪来开始-如何看待Python的由来?Python小白如何入门?(附教程)
  20. 子曾经曰过,当心累了的时候,身体也会垮台。

热门文章

  1. gridview 通用分页实现
  2. table标签+css代码实现选项卡效果(用)
  3. 漫步数学分析九——级数
  4. Markdown YYDS,但是编辑器依旧可以更好 | CSDN编辑器测评
  5. DPMM的理解、公式推导及抽样
  6. selenium在eclipse中的使用(详细介绍)
  7. Windows8.1还原文件类型的默认打开方式
  8. C++用new和不用new创建类对象区别
  9. ubuntu 修该rm命令使删除文件到回收站
  10. Java 8 Stream API详解