Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 按变量筛选列表的唯一LINQ(不区分大小写)_C#_List_Linq_Filter_Case Insensitive - Fatal编程技术网

C# 按变量筛选列表的唯一LINQ(不区分大小写)

C# 按变量筛选列表的唯一LINQ(不区分大小写),c#,list,linq,filter,case-insensitive,C#,List,Linq,Filter,Case Insensitive,我有 我也不确定如何在一个return语句中返回3个变量filtered1,2,3。也许只是将这3个变量组合成一个变量,然后返回它 我是一个初学者,已经对此进行了研究。我希望得到解释,而不仅仅是修复 谢谢 编辑:如果不将功能更改为IEnumerable practice\u example6 list cars,我不应该这样做-我知道这将是理想的,但会受到限制。使用不敏感的索引: 对于连接3个集合的一般情况,根据情况使用Concat或Union: 使用不敏感的IndexOf: 对于连接3个集合的

我有

我也不确定如何在一个return语句中返回3个变量filtered1,2,3。也许只是将这3个变量组合成一个变量,然后返回它

我是一个初学者,已经对此进行了研究。我希望得到解释,而不仅仅是修复

谢谢

编辑:如果不将功能更改为IEnumerable practice\u example6 list cars,我不应该这样做-我知道这将是理想的,但会受到限制。

使用不敏感的索引:

对于连接3个集合的一般情况,根据情况使用Concat或Union:

使用不敏感的IndexOf:

对于连接3个集合的一般情况,根据情况使用Concat或Union:

您可以尝试:

filtered.Concat(filtered2).Concat(filtered3);
比如:

string.Equals(x.Make, "Honda", StringComparison.CurrentCultureIgnoreCase);
完整方法:

List<Car> filtered = cars.Where(x => string.Equals(x.Make, "Honda", StringComparison.CurrentCultureIgnoreCase)).ToList();
您可以尝试:

filtered.Concat(filtered2).Concat(filtered3);
比如:

string.Equals(x.Make, "Honda", StringComparison.CurrentCultureIgnoreCase);
完整方法:

List<Car> filtered = cars.Where(x => string.Equals(x.Make, "Honda", StringComparison.CurrentCultureIgnoreCase)).ToList();
这个怎么样

if (cars == null)
{
   return 0;
}
else
{
   return cars.Count(x => string.Equals(x.Make, "Honda", StringComparison.CurrentCultureIgnoreCase) && x.SuggestedRetailPrice < 30000);
}
这个怎么样

if (cars == null)
{
   return 0;
}
else
{
   return cars.Count(x => string.Equals(x.Make, "Honda", StringComparison.CurrentCultureIgnoreCase) && x.SuggestedRetailPrice < 30000);
}

谢谢你的解释。不幸的是,我必须使用的功能,因为它是写这是一个在线课程,我正在使用。所以我不能改变函数。@William-现在只看到你想要的是计数,所以无论如何更新了答案。谢谢你的解释。不幸的是,我必须使用的功能,因为它是写这是一个在线课程,我正在使用。因此,我无法更改函数。@William-现在只看到您想要的是计数,所以无论如何更新了答案。这不起作用,因为我无法返回筛选结果,因为它必须是列表形式。我不确定我是否理解。。是否需要返回满足筛选条件的汽车元素的数量?是。它不允许我返回filtered,因为如上所述,您的代码试图返回一个int。我想最终返回一个名为Hondacase insensitive的汽车列表,这些汽车的价格低于30000谢谢您的编辑,我肯定遗漏了什么。编辑的代码不起作用,因为我不能使用ToList;因为int类型没有ToList.sure的定义,所以我在列表上使用了Countexpression扩展方法,只需计算满足表达式的项数。对于表达式本身,我使用字符串.Equals作为不区分区域性的,并将多个条件与逻辑and-&&组合在一起。这不起作用,因为我无法返回filtered,因为它必须是列表形式。我不确定我是否理解。。是否需要返回满足筛选条件的汽车元素的数量?是。它不允许我返回filtered,因为如上所述,您的代码试图返回一个int。我想最终返回一个名为Hondacase insensitive的汽车列表,这些汽车的价格低于30000谢谢您的编辑,我肯定遗漏了什么。编辑的代码不起作用,因为我不能使用ToList;因为int类型没有ToList.sure的定义,所以我在列表上使用了Countexpression扩展方法,只需计算满足表达式的项数。对于表达式本身,我使用字符串.Equals作为不区分区域性的,并将多个条件与逻辑and结合起来-&&看到最后一个规定,我想他们希望您使用FindAll。看到最后一个规定,我想他们希望您使用FindAll。
   List<Car> filtered = cars.Where(x => x.Make.ToLower() == "honda").ToList();