.net-ef6 codefirst 多对多关系如何在查询时包含实体的引用对象

问题描述

ef6 codefirst 多对多关系如何在查询时包含实体的引用对象

例如有3个实体

public class A
{
    public string Id {get; set;}
    public List<B> BList {get; set;}
}

public class B
{
    public string Id {get; set;}
    [ForeignKey("CObj")]
    public string CId {get; set;}
    public C CObj {get; set;}

    public List<A> AList {get; set;}
}

public class C
{
    public string Id {get; set;}
    public string Desc {get; set;}
}

在查询时 我使用如下linq

using(var db = new MyContext())
{
    var linq = db.Set<A>().Include(e=>e.BList).Where(e=>e.Id == "exampleId").FirstOrDefault();
}

得到的实例A中的BList有内容,但是BList所有B实例的C属性是null。有没有办法能够把C对象也包含进来?有的话linq要怎么写?

时间: 2025-01-27 20:37:57

.net-ef6 codefirst 多对多关系如何在查询时包含实体的引用对象的相关文章

MYSQL中多对多关系的数据查询处理,请大神指点

问题描述 MYSQL中多对多关系的数据查询处理,请大神指点 用户表 create table user( uid int primary key auto_increment, uname varchar(30), uaddress varchar(15)) 订单表 create table orders( oid int primary key auto_increment, uid int not null, address varchar(70)); 商品表 create table pr

NHibernate之旅(11):探索多对多关系及其关联查询

本节内容 多对多关系引入 多对多映射关系 多对多关联查询 1.原生SQL关联查询 2.HQL关联查询 3.Criteria API关联查询 结语 多对多关系引入 让我们再次回顾在第二篇中建立的数据模型: 在图上,我已经清晰的标注了表之间的关系,上两篇分析Customer和Order之间的"外键关系"或者称作"父子关系"."一对多关系"和关联查询,这一篇以Order为中心,分析Order和Product之间的关系,直接看下面一幅图的两张表:

[NHibernate]多对多关系(关联查询)

目录 写在前面 文档与系列文章 多对多关系关联查询 总结 写在前面 上篇文章介绍了nhibernate中对一对多关系进行关联查询的几种方式,以及在使用过程需要注意的问题.这篇文章对多对多关系的查询处理也采用上篇文章的描述方式进行说明. 文档与系列文章 [Nhibernate]体系结构 [NHibernate]ISessionFactory配置 [NHibernate]持久化类(Persistent Classes) [NHibernate]O/R Mapping基础 [NHibernate]集合

Hibernate多对多关系查询出所有结果

问题描述 Hibernate多对多关系查询出所有结果 问题背景: 现在有三张表,学生.班级.课程,学生和班级为多对多,学生和课程为多对多,班级和课程是多对一,即一门课可以有多个班级. 我写的学生实体类: private Integer id; private String name; private Set<Clazz> clazzs=new HashSet<>(); //n-n private Set<Course> courses=new HashSet<&g

sql-多对多关系的SQL查询?求解

问题描述 多对多关系的SQL查询?求解 项目中涉及多对多关系的查询,想不出能怎么写SQL语句: 描述如下:根据web页面给定的课程(有一到多个)查询选修了这些给定课程的学生的姓名 关系表S(学生),C(课程),SC(学生-课程) S:(sid,sname) C:(cid,cname) SC:(sid,cid)

EF里一对一、一对多、多对多关系的配置和级联删除

原文:EF里一对一.一对多.多对多关系的配置和级联删除 本章节开始了解EF的各种关系.如果你对EF里实体间的各种关系还不是很熟悉,可以看看我的思路,能帮你更快的理解. I.实体间一对一的关系 添加一个PersonPhoto类,表示用户照片类 /// <summary> /// 用户照片类 /// </summary> public class PersonPhoto { [Key] public int PersonId { get; set; } public byte[] Ph

mysql-数据库 一对多。多对多关系处理

问题描述 数据库 一对多.多对多关系处理 目前实体.关系为.一台设备必须绑定一张sim卡.一台设备只能绑定在一台车辆上.一台车辆只能属于一个公司.一个公司有多台车辆.设备安装在车辆上.需要填写绑定信息.sim卡安装在设备上 是否开通. 目前是.设备表.sim表.安装表关键.车辆与设备.车辆表.公司表 查询时需要查询某个公司的某台车辆是否绑定某台设备.是否开通 解决方案 那么你的问题是什么呢?定义一对多的做法是,一的那侧,定义为主键,并且关联到多的那侧即可. 解决方案二: 拆分关系.增加一个表.使

精通Grails: 使用Ajax实现多对多关系

在 Web 应用程序中,多对多(m:m)关系很难处理.在 精通 Grails 系列的这一期文章中,Scott Davis 将向您展示如何在 Grails 中成功实现 m:m 关系.了解如何通过 Grails 对象关系映射(Grails Object Relational Mapping,GORM)API 和后端数据库处理多对多关系.学习如何使用 Ajax (Asynchronous JavaScript + XML)流线化用户界面. 软件开发就是使用代码来模拟现实世界.例如,书籍都有作者和出版商

数据类型转换-【萌芽求助】hbase数据库多对一关系设计

问题描述 [萌芽求助]hbase数据库多对一关系设计 在myeclips10上,连接hbase数据库,表单的信息获取成功.question_one:不知道如何把map型转换成json或者其他格式传到前台,question_two:不知道如何在hbase中设计多对一.多对多的数据关系 解决方案 求大神驻足 ----IT届萌芽一枚,再次多谢