gpt4 book ai didi

c# - 在此上下文中仅支持原始类型或枚举类型

转载 作者:IT王子 更新时间:2023-10-29 04:01:00 25 4
gpt4 key购买 nike

我已经看到很多关于这个主题的问题,但我无法对其中的任何一个进行分类,从而真正解决我所看到的问题。我有一个事件实体,用于跟踪分配给哪个员工以及哪个员工创建并更新了记录。如果我删除 `where a.AssignedEmployee == currentUser' 这行代码,我不会收到下面的运行时错误。

Unable to create a constant value of type 'DataModels.Employee'. Only primitive types or enumeration types are supported in this context.

Controller

var query = from a in db.Activities
where a.AssignedEmployee == currentUser
where a.IsComplete == false
orderby a.DueDate
select a;
return View(query.ToList());

查看

@model IEnumerable<Data.DataModels.Activity>
..........

最佳答案

我的猜测是该错误表明 EF 无法将 Employee 的相等运算符转换为 SQL(无论您是假设引用相等还是重写的 == 运算符).假设 Employee 类有一个唯一标识符尝试:

var query = from a in db.Activities
where a.AssignedEmployeeId == currentUser.Id
where a.IsComplete == false
orderby a.DueDate
select a;
return View(query.ToList());

关于c# - 在此上下文中仅支持原始类型或枚举类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15211362/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com