我使用LinqKIT的.AsExpandable()擴展來動態生成Where表達式。如何在使用LinqKIT的.AsExpandable()時包含子實體(導航)
例如,
Expression<Func<Asset, bool>> assetNamePredicate = m => m.AssetName == "abc";
Expression<Func<Asset, bool>> assetPurchaseDateFromPredicate = m => m.PurchaseDate > DateTime.Now.AddDays(-10);
Expression<Func<Asset, bool>> whereExpression = t => assetNamePredicate.Invoke(t) && assetPurchaseDateFromPredicate.Invoke(t);
return new entitiesContainer().Set<Asset>().AsExpandable().Where(whereExpression).ToList<Asset>();
現在資產實體包含其具有外鍵AssetType表中的ID字段AssetTypeID。 但是,當我嘗試編寫Include語句以將AssetType包含在結果集中時,它不起作用,並且每個Asset實體的AssetType屬性始終爲空...但是,如果我不使用.ExExpandable()擴展。
任何有關我們如何使用AsExpandable()擴展結果集來加載相關實體的想法。
P.S. - 我的場景比我提供的示例代碼有點複雜,所以我無法避免使用此擴展名。