在下面的代码中,我试图阅读所选项目的列表和所有可用项目的列表.
我想存储所有未从所有项目列表中选择的项目.但是使用下面的代码,我有所有项目的列表...在哪里以及如何打破第二个循环incase projectId.Value == selectedProjectId.Value?
public IEnumerable NotselectedProjects; public IEnumerable NotSelectedProjects(){
if (this.NotselectedProjects == null)
{
List<SelectListItem> result = new List<SelectListItem>();
foreach (var selectedProjectId in selectedProjects)
{
foreach (var projectId in projectLists)
{
if (projectId.Value != selectedProjectId.Value)
{
result.Add(new SelectListItem
{
Selected = false,
Text = projectId.Text,
Value = projectId.Value
});
this.NotselectedProjects = result.AsEnumerable();
}
}
}
}
return this.NotselectedProjects;
}
Run Code Online (Sandbox Code Playgroud)
您可以使用LINQ缩短循环
var result = from projectId in projectLists
where !selectedProjects.Any(s => s.Value == projectId.Value)
select new SelectListItem
{
Selected = false,
Text = projectId.Text,
Value = projectId.Value
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3177 次 |
| 最近记录: |