我想知道我是否可以做些什么来让它按预期工作。这在我的代码中运行良好:
var roles = _securityContext.Set<Role>();
var roleList = new List<RoleDto>();
foreach (var role in roles)
{
roleList.Add(Mapper.Map<Role, RoleDto>(role));
}
return roleList;
但将其更改为:
var roles = _securityContext.Set<Role>();
return roles.Select(role => Mapper.Map<Role, RoleDto>(role)).ToList();
导致我以前从未见过的错误:
“LINQ to Entities 无法识别方法 'Security.Dto.RoleDto MapRole,RoleDto' 方法,并且此方法无法转换为存储表达式”
我不确定我是否可以对这个“问题”做任何事情......可以说,无论如何,可行的方法更具可读性......