int ID = 202;
string GroupName = string.Empty;
List<CandidateGroupInfo> CandidateGroups = new List<CandidateGroupInfo> {
new CandidateGroupInfo{NameAR = "A", CandidateList = new List<CandidateList> { new CandidateList{ID=101}, new CandidateList{ID=102}}},
new CandidateGroupInfo{NameAR = "B", CandidateList = new List<CandidateList> { new CandidateList{ID=201}, new CandidateList{ID=202}}},
new CandidateGroupInfo{NameAR = "C", CandidateList = new List<CandidateList> { new CandidateList{ID=301}, new CandidateList{ID=302}}}
};
foreach(var group in CandidateGroups)
{
foreach (var candidate in group.CandidateList)
{
if (candidate.ID == ID)
{
GroupName = group.NameAR;
break;
}
}
if (!string.IsNullOrWhiteSpace(GroupName))
{
break;
}
}
Console.WriteLine(GroupName != ""? GroupName.ToUpper() : null);
GroupName = string.Empty;
CandidateGroupInfo info = CandidateGroups.FirstOrDefault(cg => cg.CandidateList.Any(cl => cl.ID == ID));
GroupName = info == null ? string.Empty : info.NameAR.ToUpper();