【发布时间】:2017-07-21 07:24:59
【问题描述】:
我正在使用 EF 框架从 SQL DB 中检索数据。
子请求表如下所示:
在此表中,“org_assigneddept”是另一个部门表的外键。
我有部门列表作为输入,我只想从 org_assigneddept 与列表匹配的 DB 中检索那些行。
请找到我的完整代码:-
private List<EventRequestDetailsViewModel> GetSummaryAssignedDeptEventRequests(List<EmpRoleDeptViewModel> vmDept)
{
List<EventRequestDetailsViewModel> vmEventRequestDeptSummary = new List<EventRequestDetailsViewModel>();
RequestBLL getRequestBLL = new RequestBLL();
Guid subRequestStatusId = getRequestBLL.GetRequestStatusId("Open");
using (var ctxGetEventRequestSumm = new STREAM_EMPLOYEEDBEntities())
{
vmEventRequestDeptSummary = (from ers in ctxGetEventRequestSumm.SubRequests
where vmDept.Any(dep=>dep.DeptId == ers.org_assigneddept)
select new EventRequestDetailsViewModel
{
SubRequestId = ers.org_subreqid
}).ToList();
}
}
它在 LINQ 查询级别给出以下错误:-
System.NotSupportedException: '无法创建常量值 键入“Application.Business.DLL.EmpRoleDeptViewModel”。只有原始 在此上下文中支持类型或枚举类型。'
请告诉我如何才能达到结果
【问题讨论】:
标签: entity-framework linq linq-to-entities