C# 按条件选择行以填充列表
我有一个列表C# 按条件选择行以填充列表,c#,linq,entity-framework,where-clause,C#,Linq,Entity Framework,Where Clause,我有一个列表用户,我想选择那些有用户名的行来填充用户列表 例如,用户列表包含“joe”和“Mary”。我想选择包含Username字段为“joe”或“mary”的行。我该怎么写 List<string> Users = new List<string>() {"joe", "marry"}; model = model.Where(r => r.UserName ??? List Users=newlist(){“joe”,“mary”}; model=model
用户
,我想选择那些有用户名
的行来填充用户
列表
例如,用户
列表包含“joe”和“Mary”。我想选择包含Username
字段为“joe”或“mary”的行。我该怎么写
List<string> Users = new List<string>() {"joe", "marry"};
model = model.Where(r => r.UserName ???
List Users=newlist(){“joe”,“mary”};
model=model.Where(r=>r.UserName???
试试这个:
model = model.Where(r => Users.Contains(r.Username));
类似的tsql是,('joe','Mary')中的r.username确保列表是一个列表或一个基元数组(如字符串)或来自同一上下文的IQueryable。否则Linq将尝试将复杂类发送到实体框架(数据库)EF Linq会抱怨,SQL不支持
可枚举。Where'string
或List'Foo
谢谢。它起作用了。用户来自角色。GetUsersInRole(角色);