LINQ union 2表

时间:2016-06-02 05:10:01

标签: c# sql entity-framework linq

我有一个表(T),它引用了另外两个表(AB)(两个引用都是空的,但每行仍有一个填充) 。我需要来自所有3的联合数据。如果(T)中的行引用了A,那么我需要来自A的数据,如果是B,那么来自B的数据。这不是问题,但我需要投射到类型,表A中有一组字符串,但对于表B没有(分配null或{{ 1}}或Enumerable.Empty<string>() ...产生错误)。有什么想法吗?

插图:

new List

编辑: 也许简单的问题是:如何在LINQ to Entities中投射空集合?

EDIT2:异常: (from t in context.T join a in context.A on t.RefA_ID equals a.ID select new ProjectionType { ... CollectionProperty = a.Collection }).Union( from t in context.T join b in context.B on t.RefB_ID equals b.ID select new ProjectionType { ... CollectionProperty = WHAT_SHOULD_I_PUT_THERE??? // needed because of union })

1 个答案:

答案 0 :(得分:0)

看来,在查询外部定义虚拟变量