首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >实体框架Linq2Db转换

实体框架Linq2Db转换
EN

Stack Overflow用户
提问于 2021-03-24 02:45:04
回答 1查看 43关注 0票数 0

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

代码语言:javascript
复制
           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);
    }`
EN

回答 1

Stack Overflow用户

发布于 2021-03-24 04:46:24

EF导航属性=> linq2db关联

EF紧急加载Include() => linq2db LoadWith()

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66769409

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档