我有一个已填充了四个不同相关实体内容的对象。但是我有另一个实体,其中我不能包括作为查询的一部分,因为它没有在导航属性中直接关联到我正在拉的IQueryable表。我想要包含的实体与已成功包含的四个不同实体之一相关。
是否有办法将此实体作为我正在创建的整体对象的一部分(在db命中或之后)包含?
以下是我调用构建CARTITEM对象的示例:
public List<CARTITEM> ListCartItem(Guid cartId)
{
//Create the Entity object
List<CARTITEM> itemInfo = null;
using (Entities webStoreContext = new Entities())
{
//Invoke the query
itemInfo = WebStoreDelegates.selectCartItems.Invoke(webStoreContext).ByCartID(cartId).ToList();
}
//Return the result set
return itemInfo;
}
这里是selectCartItems过滤器(我通常会做包含的地方):
public static Func<Entities, IQueryable<CARTITEM>> selectCartItems =
CompiledQuery.Compile<Entities, IQueryable<CARTITEM>>(
(cart) => from c in cart.CARTITEM.Include("ITEM").Include("SHIPPINGOPTION").Include("RELATEDITEM").Include("PROMOTION")
select c);
从这里我有我的CARTITEM对象。问题是我想在此对象中包含PROMOTIONTYPE表,但由于CARTIEM实体没有直接导航属性到PROMOTIONTYPE表,我收到错误。
如果您需要进一步澄清,请与我们联系。 谢谢, 比利