寻找一种方法来检查字符串是否包含在另一个忽略大写/小写的情况下,我发现it:
工作正常。然后,我尝试将它放到我的StringExtensions
命名空间。
namespace StringExtensions
{
public static class StringExtensionsClass
{
//...
public static bool Contains(this string target, string toCheck, StringComparison comp)
{
return target.IndexOf(toCheck, comp) >= 0;
}
}
}
然后:
using StringExtensions;
...
if (".. a".Contains("A", StringComparison.OrdinalIgnoreCase))
但是我收到以下错误:
方法'包含'没有重载需要'2'参数
我该如何解决?
答案 0 :(得分:22)
如果要使用扩展程序,请使用以下语句添加:
using StringExtensions;
由于声明了Extension方法的方式,visual studio本身不会找到它们,而常规的Contains
方法只接受一个参数,因此是你的例外。
答案 1 :(得分:6)
我发现了我的错误:
对于使用dynamic
类型的工作,需要使用cast
到string
。 。ToString()
方法还不够。
if (((string)result.body).Contains(foo, StringComparison.OrdinalIgnoreCase))
现在工作正常。 再次感谢stackoverflow。 :)