【发布时间】:2019-05-16 09:33:01
【问题描述】:
我有一个对象列表,其中包含已从较大列表中过滤掉的合同信息List<Contract> endedContracts。我现在正在尝试将此列表中的信息与我的数据库中的记录相匹配,并使用一些进一步的过滤器。
var endedContracts = _contracts
.Where(x => x.Contract.IsContractInLastBillingPeriod(referencePeriod))
.Where(x => x.Contract.IsContractCoveredByLiveInvoices(x.Contract.Invoices)).ToList();
当我运行以下查询时,我得到了错误。
var crystallisedCommissions = _context.Contracts
.Where(x => x.Statement.Sent)
.Where(x => x.Statement.Broker == endedContracts.First().Broker.Code)
.Where(x => !Period.IsPeriodBeforeReferencePeriod(x.Statement.Period, CUT_OFF_PERIOD))
.Where(x => endedContracts.Any(y => y.Contract.Identifier == x.Identifier
&& y.Contract.StartDate == x.ContractStartDate
&& y.Contract.EndDate == x.ContractEndDate)).ToList();
确切的错误:
无法创建“合同”类型的常量值。此上下文仅支持原始类型或枚举类型。”
【问题讨论】:
标签: c# entity-framework linq