C# 方法'没有重载;包含';使用列表和简单字符串获取2个参数

C# 方法'没有重载;包含';使用列表和简单字符串获取2个参数,c#,list,contains,C#,List,Contains,从中借用,我试着做了以下几点: List<string> animals = new List<string> { "Horse", "Cat", "Dog" }; bool testCase = animals.Contains("horse", StringComparer.CurrentCultureIgnoreCase); List动物=新列表{“马”、“猫”、“狗”}; bool testCase=animals.Contains(“马”,StringComp

从中借用,我试着做了以下几点:

List<string> animals = new List<string> { "Horse", "Cat", "Dog" };
bool testCase = animals.Contains("horse", StringComparer.CurrentCultureIgnoreCase);
List动物=新列表{“马”、“猫”、“狗”};
bool testCase=animals.Contains(“马”,StringComparer.CurrentCultureInogoreCase);
但正是这样做,我得到了“方法'Contains'不重载2个参数”

我也试过这样做:

List<string> animals = new List<string> { "Horse", "Cat", "Dog" };
string testAnimal = "horse";
bool testCase = animals.Contains(testAnimal, StringComparer.CurrentCultureIgnoreCase);
testCase = animals.Contains((string)testAnimal, StringComparer.CurrentCultureIgnoreCase);
List动物=新列表{“马”、“猫”、“狗”};
string testAnimal=“horse”;
bool testCase=animals.Contains(testAnimal、StringComparer.CurrentCultureIgnoreCase);
testCase=animals.Contains((string)testAnimal、StringComparer.CurrentCultureInoRecase);
但这两种方法都会得到相同的错误


我在这里遗漏了什么?

您可能正在搜索Linq扩展方法
包含(IEnumerable、TSource、IEqualityComparer)
,该方法有文档记录


在您的情况下,只需使用System.Linq添加
就足够了
到源文件的顶部,然后该方法弹出。

您必须使用作为名称空间System.Linq一部分的扩展名方法Contains。 只需在文件顶部添加这一行,就可以使用带有两个参数的方法

使用System.Linq;

我的系统没有linq命名空间。。。我正在遵循这些步骤athttps://stackoverflow.com/questions/37694861/the-type-or-namespace-name-linq-does-not-exist-in-the-namespace-system 我甚至看不到system.core或system.data.Linq我们走吧。。。不知怎的,我的目标框架设置为2.0。。。是的……除非您使用的是非常旧的.net Framework版本(<3.5),否则您必须有System.Linq可用。这是否回答了您的问题?没有。问题是我没有System.Linq,而该页面根本没有提到它。