我正在尝试获取数据库中所有条目的列表,这些条目的某个布尔属性为false。我使用了foreach循环来获取列表,但我希望找到一种更优化的方法来执行此操作。 这是我使用的控制器代码:
private DataBaseEntities db = new DataBaseEntities();
public ActionResult ApproveUsersList()
{
List<ApproveUserViewModel> unapprovedUsers = new List<ApproveUserViewModel>();
foreach (User dbUser in db.Users)
{
if (!dbUser.Approved)
{
ApproveUserViewModel model = new ApproveUserViewModel();
unapprovedUsers.Add(model);
}
}
return View(unapprovedUsers.ToList());
}
答案 0 :(得分:1)
为什么不使用Linq?
var _unapprovedUsers= unapprovedUsers.Where(m => !m.Approved).ToList();
答案 1 :(得分:1)
var found = db.Users.Where(w => !w.Approved).Select(s => new ApproveUserViewModel { Approved = s.Approved,... }).ToList();
unapprovedUsers.AddRange(found);