问题:获取存在于所有实体中的用户,例如ENT01,ENT02,ENT03中存在的Ali
我有一个列表,希望获取每个组中存在的用户。在给定的图像细节中,所有三个EntityCode中均存在OfficerName
“ Ali ”。我需要获取存在于给定的EntityCodes列表中的用户
从数据库表中检索的EntitUser列表。使用以下查询
List<string> EntityCodes = new List<string>();// have 3 EntCodes, can have more
var Contacts=_db.EntityUser.Where(x => x.MasterGroupCode == GroupCode && x.IsCurrent==true).ToList();
我得到EntityUser
包含这些属性的列表
public partial class EntityUser
{
public string Email { get; set; }
public System.Guid Id { get; set; }
public string EntityCode { get; set; }
public string OfficerType { get; set; }
public string OfficerName { get; set; }
}
任何帮助将不胜枚举
如果我对问题的理解正确,那么此示例应该可以解决您的问题。
注意:只需使用dbContext而不是EntityUsers
collection
// sample test data
var EntityUsers = new List<EntityUser>()
{
new EntityUser(){EntityCode = "ENT01" , OfficerName = "ali"},
new EntityUser(){EntityCode = "ENT02" , OfficerName = "ali"},
new EntityUser(){EntityCode = "ENT03" , OfficerName = "ali"},
new EntityUser(){EntityCode = "ENT01" , OfficerName= "jorj"},
new EntityUser(){EntityCode = "ENT01" , OfficerName= "reza"},
new EntityUser(){EntityCode = "ENT01" , OfficerName= "hamid"},
new EntityUser(){EntityCode = "ENT01" , OfficerName= "farid"},
new EntityUser(){EntityCode = "ENT02" , OfficerName= "farid"},
new EntityUser(){EntityCode = "ENT03" , OfficerName= "sasan"},
new EntityUser(){EntityCode = "ENT02" , OfficerName= "jorj"},
};
// this also can be load from database.
List<string> entityCodes = new List<string>() { "ENT01" , "ENT02" , "ENT03" };
// linq query to select users that has all EntityCodes
var usersInAllEntities = from u in EntityUsers
group u by u.OfficerName into gr
where entityCodes.All(c => gr.Any(g => g.EntityCode == c ) )
from usr in gr
select usr;
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句