请提供一些关于联合LINQ表达式的帮助

请提供一些关于联合LINQ表达式的帮助,linq,linq-to-sql,linq-to-entities,Linq,Linq To Sql,Linq To Entities,我需要一些帮助来构造LINQ表达式。我倾向于使用Lambda语法 我有两张桌子 OrderItem >- LibraryItem OrderItem有许多列: Id FkLibraryItemId Text FkOrderId LibraryItem有许多列: Id Text Type 通常在选择“OrderItem”时,会选择“Library Item”。“Id”和“文本”值被放入项目记录中 有时,用户可能会添加一个一次性的“OrderItem”,它不需要存储在“LibraryIt

我需要一些帮助来构造LINQ表达式。我倾向于使用Lambda语法

我有两张桌子

OrderItem >- LibraryItem
OrderItem有许多列:

Id
FkLibraryItemId
Text
FkOrderId
LibraryItem有许多列:

Id
Text
Type
通常在选择“OrderItem”时,会选择“Library Item”。“Id”和“文本”值被放入项目记录中

有时,用户可能会添加一个一次性的“OrderItem”,它不需要存储在“LibraryItem”表中。它只存储在“OrderItem”中,但没有“FkLibraryItemId”。因此,我在“OrderItem”中有“LibraryItem”中不存在的记录

除了相关订单Id的“OrderItem”记录外,我还需要LINQ取出所有相关的“LibraryItem”记录(Type=X)

非常感谢

更新:

我想我说的是:

LibraryItem.Select(new{Id,Text}).Union(Order.Select(new{Id, Text})
linqtosql对
Include
有不同的语法,它基本上是急切地加载引用对象(可能是
LoadWith
,我现在不记得了)


实际上,你也可以用左内连接

“包括”仅反映FKs引用的记录。那些不是的呢?哦,非常感谢你的帮助。它将填充外键对象,如果有空FK,它将只带主对象。啊,我想,我搞错了,让我重写一下这个的查询库。我刚刚意识到我使用的是一个,不能将“包含”与列表一起使用,或者这是可能的。如果您使用的是列表,您已经执行了查询,可能是您应该在从数据库中获取列表之前进行包含。谢谢。你让我在另一架飞机上思考。
    context.OrderItems.Include("LibraryItems")
.Where(o => o.OrderId == orderId 
&&(o.LibraryItem != null ? o.LibraryItem.Type == "X" : true))