所以我在[{1}}中的model.Salesmen
作为List<ApplicationUser>
的分支中列出了现有销售人员。
我想生成一个包含所有其他用户的列表,以填充下拉菜单以便于添加。到目前为止我所写的内容受到this SO post的启发:
db.Users.Where(u => !model.Salesmen.Any(m => u.Id == m.Id)).OrderBy(u => u.Name).ToList();
我得到的错误:
无法创建类型&#39; Leads.Models.ApplicationUser&#39;的常量值。在此上下文中仅支持原始类型或枚举类型。
我做错了什么,如何解决?
答案 0 :(得分:2)
您无法将整个集合放入lambda,因为EF无法将其转换为查询。这样做:
var salesMenIds = model.Salesmen.Select(s => s.Id);
db.Users.Where(u => !salesMenIds.Contains(u.Id)).OrderBy(u => u.Name).ToList();