2
我想从Employee数据库中检索存储在Employee表中的EmployeeDTO列表。每个员工都可以拥有一个或多个专业。专业性存储在OrganizationSpecialtyType中。 Employee和OrganizationSpecialtyType通过EmployeeSpecialty表与“多对多”相关。LINQ to Entities无法识别方法'System.Collections.Generic.Dictionary`2 [System.Int32,System.String] ToDictionary
我用下面的查询为,得到了异常喜欢在标题:
var q = _context.Employee.Where(p => employeeEMIIDs.Contains(p.EmployeeID))
.Select(p => new EmployeeDTO
{
EmployeeID = p.EmployeeID,
GenderTypeID = p.GenderTypeID,
FirstName = p.FirstName,
LastName = p.LastName,
Name = p.Name,
MiddleName = p.MiddleName,
DOB = p.DOB,
Suffix = p.Suffix,
Title = p.Title,
Sepcialty = p.EmployeeSpecialty
.ToDictionary(d => d.OrganizationSpecialtyType.SpecialtyTypeID, d => d.OrganizationSpecialtyType.Name)
}
);
在EmployeeDTO类属性的专业是公共型词典。
如果我执行这个查询,一切工作normaly:
var spec = _context.Employee.Where(p => p.EmployeeID == -9070).FirstOrDefault().EmployeeSpecialty.ToDictionary(d => d.OrganizationSpecialtyType.SpecialtyTypeID, d => d.OrganizationSpecialtyType.Name);
我怎样才能解决我的第一次查询,以获得EmployeeDTO与特色?
谢谢
如何从此获得IQueryable – user1744973 2016-01-09 05:01:26