【问题标题】:Retrieve invoice details when retrieving invoices检索发票时检索发票详细信息
【发布时间】:2016-11-07 20:07:14
【问题描述】:

我有这个简单的 LINQ to CRM 查询:

//retrieve all invoices associated to the cycle...
List<Invoice> invoiceCycleInvoices = ctx.InvoiceSet.Where(x => x.new_invoice_cycle_invoicesid.Id == invoiceCycle.Id
    && x.new_erpsync == false
    && x.StateCode != InvoiceState.Canceled).ToList();

通常,ToList 调用会提取延迟加载忘记的所有相关信息,但 Invoice 中有一个名为 invoice_details 的属性始终为空。

如何一举将其填充?

【问题讨论】:

  • invoice_details 是个孩子?
  • 是的,对不起。编辑了问题以清除它。

标签: c# .net linq dynamics-crm-2011 dynamics-crm-2016


【解决方案1】:

使用LoadProperty 访问实体关系。

foreach (var invoice in invoiceCycleInvoices)
{
    ctx.LoadProperty(invoice, "invoice_details");
    var invoiceDetail = invoice.GetRelatedEntity<Entity>("invoice_details");
}

【讨论】:

    【解决方案2】:

    应该是:

    List<Invoice> invoiceCycleInvoices = ctx.InvoiceSet
        .Where(x => x.new_invoice_cycle_invoicesid.Id == invoiceCycle.Id
            && x.new_erpsync == false
            && x.StateCode != InvoiceState.Canceled)
        .Include(x => x.invoice_details)
        .ToList();
    

    【讨论】:

      猜你喜欢
      • 2019-09-15
      • 2021-01-19
      • 2017-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多