我有我写的这个方法:
private void GetReceivedInvoiceTasks(User user, List<Task> tasks)
{
var taskList = from i in _db.Invoices
join a in user.Areas on i.AreaId equals a.AreaId
where i.Status == InvoiceStatuses.Received
select i;
}
基本上,我试图在用户区域的数据库中获取状态为已收到的所有发票。我现在不太了解 LINQ。
我收到错误:
base {System.SystemException} = {“无法创建类型为‘Models.Area’的常量值。在此上下文中仅支持原始类型(‘例如 Int32、String 和 Guid’)。”}
有人可以向我解释我做错了什么以及如何解决这个问题吗?我目前无法理解问题所在。如果我join
把这条线拿出来很好,但我真的需要这条线来确保我只有来自用户区域的发票(它们可以属于多个区域)。我对这个查询有什么根本错误吗?