我有一个查询方法,有时我会根据情况包括附加表“类别”和“制造商”。但是,每当我运行查询时,类别和制造商导航属性始终为空白。我究竟做错了什么?
private IQueryable<Item> GetQuery(ItemFilter filter, ItemCacheContainer context)
{
//Perform optional Joins
ObjectQuery<Item> query = context.Items;
if (filter.JoinCategory)
query.Include("Category");
if (filter.JoinManufacturer)
query.Include("Manufacturer");
return query.Where(i =>
(!filter.ItemId.HasValue
|| i.ItemId == filter.ItemId.Value));
}
此外,这是我使用该GetQuery
方法的方式,但是当我在其中放置断点时,ConvertItemFromCache
我看到了那些空导航属性。
GetQuery(filter, context)
.ToList()
.ConvertAll(ConvertItemFromCache)
.SingleOrDefault();
谢谢!