List<PrpSubjects> objListSubjects = _objSubjectDal.GetAllSubjects();
ddlSubjects.DataSource = objListSubjects;
ddlSubjects.DataBind();
_subjectName = objListSubjects...?
在_subjectName
中,我想根据subjectid从objListSubjects中获取subjectname。主题列表包含subjectid和subjectname列。
问题是我有一个列表,有两列subjectid,subjectname。。。该方法返回一个主题列表。现在我想通过subjectid获取主题名称,,而不是再次查询数据库。我想在列表上使用linq来获取主题名称。。我希望我清楚我的需求
_subjectName = objListSubjects
.Where(s => s.SubjectId == someId)
.Select(s => s.SubjectName)
.FirstOrDefault();
(如果没有id为someId
的受试者,将返回null
(
_subjectName = objListSubjects.First(s => s.SubjectID == theIdYouAlreadyHave).SubjectName;
如果你怀疑这个主题可能不存在,你可以使用
objListSubjects.FirstOrDefault(s => s.SubjectID == id);
如果null
不存在,它将返回。
或者,如果您发现sql样式更易于阅读;(
_subjectName = (from s in objListSubjects
where s.SubjectId == someId
select s.SubjectName).FirstOrDefault();