Entity framework 实体框架Linq2Db转换

Entity framework 实体框架Linq2Db转换,entity-framework,linq2db,Entity Framework,Linq2db,我正在升级一个使用实体框架的网站,现在使用Linq2Db。我注意到Linq2Db没有导航属性。我将如何从实体框架翻译此代码?我需要返回一份包含订单项目、装运和其他相关对象列表的订单。我无法逐个查询订单项目、装运和其他对象 IQueryable<Order> query = GetExpandedOrderTable(); DateTime beginTime = settings.LastDownloadUtc;

我正在升级一个使用实体框架的网站,现在使用Linq2Db。我注意到Linq2Db没有导航属性。我将如何从实体框架翻译此代码?我需要返回一份包含订单项目、装运和其他相关对象列表的订单。我无法逐个查询订单项目、装运和其他对象

           IQueryable<Order> query = GetExpandedOrderTable();
            DateTime beginTime = settings.LastDownloadUtc;
            DateTime endTime = settings.LastDownloadUtcEnd;

            query = query.Where(a => a.CreatedOnUtc >= beginTime);
            query = query.Where(a => a.CreatedOnUtc <= endTime);

            List<int> storeIds = GetStoreIds();

            if (storeIds.Count() > 0)
                query = query.Where(a => storeIds.Contains(a.StoreId));

            return new PagedList<Order>(query, 0, 1000).ToList();


    /// <summary>
    /// Expands order items and other sub properties.
    /// Increases performance.
    /// </summary>
    /// <returns></returns>
    private IQueryable<Order> GetExpandedOrderTable()
    {
        return orderRepository.Table
            .Include(a => a.OrderItems)
            .Include("OrderItems.Product")
            .Include(a => a.OrderNotes)
            .Include(a => a.GiftCardUsageHistory)
            .Include(a => a.BillingAddress)
            .Include(a => a.BillingAddress.StateProvince)
            .Include(a => a.BillingAddress.Country)
            .Include(a => a.ShippingAddress)
            .Include(a => a.ShippingAddress.StateProvince)
            .Include(a => a.ShippingAddress.Country)
            .Include(a => a.Customer)
            .Include(a => a.DiscountUsageHistory)
            .Include(a => a.Shipments);
    }`
IQueryable查询=GetExpandedOrderTable();
DateTime beginTime=settings.LastDownloadUtc;
DateTime endTime=settings.LastDownloadUtcEnd;
query=query.Where(a=>a.CreatedOnUtc>=beginTime);
query=query.Where(a=>a.CreatedOnUtc 0)
query=query.Where(a=>StoreId.Contains(a.StoreId));
返回新的页面列表(查询,0,1000).ToList();
/// 
///展开订单项和其他子属性。
///提高性能。
/// 
/// 
私有IQueryable GetExpandedOrderTable()
{
返回orderRepository.Table
.Include(a=>a.OrderItems)
.包括(“OrderItems.Product”)
.Include(a=>a.OrderNotes)
.Include(a=>a.GiftCardUsageHistory)
.Include(a=>a.BillingAddress)
.Include(a=>a.BillingAddress.StateProvince)
.包括(a=>a.BillingAddress.Country)
.Include(a=>a.ShippingAddress)
.Include(a=>a.ShippingAddress.StateProvince)
.Include(a=>a.ShippingAddress.Country)
.包括(a=>a.客户)
.Include(a=>a.DiscountUsageHistory)
.包括(a=>a.装运);
}`

EF导航属性=>linq2db关联


EF Eager Loading Include()=>linq2db

为什么linq2db没有导航属性?它有联系。