[英]How to query objects by entity when more than 1 entity derive from a common entity and saved in the same table
[英]entity framework query, how to select more than 1 table?
我有这个问题
var resultado = from c in conn.carrera
join u in conn.usuario on c.idusuario equals u.idusuario
join t in conn.texto on c.idtexto equals t.idtexto
where c.estatus == 1
select c;
我怎么得到它的东西:
select c.*,u.*,t.eltexto from carrera c
join usuario u on c.idusuario =u.idusuario
join texto t on c.idtexto = t.idtexto
where c.estatus = 1
您可以在查询中看到我select c.*, u.* and t.col1,
那我怎样才能在EF中找到它? 因为我的第一个查询只获得carrera.*
但我需要更多数据。
谢谢
您可以轻松返回一个新对象,该对象包含三个连接表的所有属性:
var resultado = from c in conn.carrera
join u in conn.usuario on c.idusuario equals u.idusuario
join t in conn.texto on c.idtexto equals t.idtexto
where c.estatus == 1
select new
{
c.prop_1,
c.prop_n,
u.prop_1,
u.prop_n,
t.prop_1,
t.prop_n
};
select c.*,u.*,t.eltexto from carrera c
join usuario u on c.idusuario =u.idusuario
join texto t on c.idtexto = t.idtexto
where c.estatus = 1
from c in Carrerra
join u in Usuario on c.idusuario equals u.idusuario
join t in Texto on c.idtexto equals t.idtexto
where c.estatus = 1
select new {
newcolumn1 = c.column1,
c.column2,
usercolumn1 = u.column1,
usercolumn2 = u.column2,
textcolumn = t.column1
}
如果您想要访问对象本身,那么您可以这样做
select new {
usario = u,
carrera = c,
texto = t
}
Carrera,Usario和Texto引用实体框架容器中的模型。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.