完整的错误代码:错误 CS1929 'string[]' 不包含 'Contains' 的定义,并且最佳扩展方法重载 'Queryable.Contains(IQueryable, TSource)' 需要类型为 'IQueryable' 的接收器 string[] terms = new string[31];我正在尝试查看数组中是否包含我的 Excel 文件中的内容。(使用互操作)if (terms.Contains(xlWorkSheet.Cells[1, i1 + 1].Value.ToString())) ;{}为什么包含在这里不起作用?我进行了搜索,显然,这与类型不同有关,但在这种情况下,确实如此。它们都是字符串。
3 回答
慕莱坞森
TA贡献1810条经验 获得超4个赞
有一种扩展方法System.Linq.Enumerable.Contains
。
string[]
是一个IEnumerable<string>
所以你可以使用它。
添加using System.Linq;
到文件顶部以使用它。
https://msdn.microsoft.com/en-us/library/system.linq.enumerable.contains(v=vs.110).aspx
守着星空守着你
TA贡献1799条经验 获得超8个赞
您可以使用Array.Exists并传递比较 lambda 表达式:
if (Array.Exists(terms, elem => elem == xlWorkSheet.Cells[1, i1 + 1].Value.ToString()))
{
...
}
- 3 回答
- 0 关注
- 1331 浏览
添加回答
举报
0/150
提交
取消