Entity framework 例如: 是的,这是可能的,但你需要更好地说明你所期待的结果是的,这是可能的。首先将逻辑简化为单个if,然后将循环转换为LINQWhere+ToList。是的,但它看起来相当繁忙。它还将增加额外的迭代。是的,这是可能的,但您需要更好地指定您正在寻找的结果是的
例如:Entity framework 例如: 是的,这是可能的,但你需要更好地说明你所期待的结果是的,这是可能的。首先将逻辑简化为单个if,然后将循环转换为LINQWhere+ToList。是的,但它看起来相当繁忙。它还将增加额外的迭代。是的,这是可能的,但您需要更好地指定您正在寻找的结果是的,entity-framework,linq,lambda,linq-to-sql,linq-to-entities,Entity Framework,Linq,Lambda,Linq To Sql,Linq To Entities,例如: 是的,这是可能的,但你需要更好地说明你所期待的结果是的,这是可能的。首先将逻辑简化为单个if,然后将循环转换为LINQWhere+ToList。是的,但它看起来相当繁忙。它还将增加额外的迭代。是的,这是可能的,但您需要更好地指定您正在寻找的结果是的,这是可能的。首先将逻辑简化为单个if,然后将循环转换为LINQWhere+ToList。是的,但它看起来相当繁忙。它还将添加额外的迭代。这将不会产生相同的结果result@Fredou你为什么这么说?什么情况下会有不同的结果?我想如果在同一件
是的,这是可能的,但你需要更好地说明你所期待的结果是的,这是可能的。首先将逻辑简化为单个
if
,然后将循环转换为LINQWhere
+ToList
。是的,但它看起来相当繁忙。它还将增加额外的迭代。是的,这是可能的,但您需要更好地指定您正在寻找的结果是的,这是可能的。首先将逻辑简化为单个if
,然后将循环转换为LINQWhere
+ToList
。是的,但它看起来相当繁忙。它还将添加额外的迭代。这将不会产生相同的结果result@Fredou你为什么这么说?什么情况下会有不同的结果?我想如果在同一件事情上的话,我得到了双倍的回报,再看一次就知道了sense@Fredou你错过了第一部分中的“!”吗?@JamesCurran,主题
是一个集合,根据OPS,它不会产生相同的结果result@Fredou你为什么这么说?什么情况下会有不同的结果?我想如果在同一件事情上的话,我得到了双倍的回报,再看一次就知道了sense@Fredou你错过了第一部分的“!”吗?@JamesCurran,subjects
是根据OP@JamesCurran你说得对,我删除了这个建议。谢谢大家!@你说得对,我删除了这个建议。非常感谢。
var filteredStudent = new List<Student>();
string description = "Managing the Course";
foreach (var student in students)
{
if (student.subjetcs.Any(x => x.Sylabus.Name.Contains("Critical")))
{
if (student.subjetcs.Any(x => x.Sylabus.Name.Contains("Critical") &&
description.Contains(x.Description)))
{
filteredStudent.Add(student);
}
}
else
{
filteredStudent.Add(student);
}
}
var filteredStudent = students
.Where(s=>!s.subjects.Any(x => x.Sylabus.Name.Contains("Critical") ||
description.Contains(x.Description)))
.ToList();
var filteredStudent = students
.Where(s=>s.subjects
.Any(x =>
description.Contains(x.Description) ||
!x.Sylabus.Name.Contains("Critical")))
.ToList();
var filteredStudent = students
.Where(s=>!s.subjects.Any(x =>
x.Sylabus.Name.Contains("Critical")
? !description.Contains(x.Description)
: false)
.ToList();
var filteredStudent = students
.Where(s=>!s.subjects.Any(x =>
x.Sylabus.Name.Contains("Critical")
&& !description.Contains(x.Description))
.ToList();
students.ToList().ForEach(s => filteredStudent.Add(s));
students.Where(s => s.subjetcs.Any(x => x.Sylabus.Name.Contains("Critical") && description.Contains(x.Description)))
.ToList().ForEach(s => filteredStudent.Add(s));
var list = new List<Stundent>();
list.AddRange(studnets.Where(s => s.subjetcs.Any(x => x.Sylabus.Name.Contains("Critical") && description.Contains(x.Description)));
list.AddRange(studnets.Where(s => s.subjetcs.All(x => !x.Sylabus.Name.Contains("Critical")));
list.ForEach(x => filteredStudent.Add(x));
students.Where(s => s.subjetcs.Any(x => x.Sylabus.Name.Contains("Critical") && description.Contains(x.Description)) || s.subjetcs.All(x => !x.Sylabus.Name.Contains("Critical"))
.ToList().ForEach(s => filteredStudent.Add(s));