无法访问我的扩展方法 [英] Can't Access My Extension Method

查看:53
本文介绍了无法访问我的扩展方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

寻找一种方法来检查字符串是否包含在另一个忽略大小写的情况下,我发现它:

Looking for a way to check if an string contains in another ignoring upper/lower case, I found it:

工作正常.然后,我尝试将其放入我的 StringExtensions 命名空间.

Works fine. Then, I tried put it to my StringExtensions namespace.

namespace StringExtensions
{

    public static class StringExtensionsClass
    {
        //... 

        public static bool Contains(this string target, string toCheck, StringComparison comp)
        {
            return target.IndexOf(toCheck, comp) >= 0;
        }
    }
}

然后:

使用StringExtensions;

...

if (".. a".Contains("A", StringComparison.OrdinalIgnoreCase))

但出现以下错误:

方法'Contains'的重载没有接受'2'参数

No overload for method 'Contains' takes '2' arguments

我该如何解决?

推荐答案

我发现了我的错误:

为此要与 dynamic 类型配合使用,需要使用 cast string .. ToString()方法是不够的.

for this works with dynamic type need use a cast to string. .ToString() method is not sufficient.

if (((string)result.body).Contains(foo, StringComparison.OrdinalIgnoreCase))

现在可以正常工作.再次感谢stackoverflow.:)

Works fine now. Thanks again stackoverflow. :)

这篇关于无法访问我的扩展方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆