【发布时间】:2014-05-11 05:19:55
【问题描述】:
我正在尝试写一个扩展(实际上取自Case insensitive 'Contains(string)')
它在进行字符串比较时补偿了土耳其测试。扩展本身很简单:
public static bool Contains(this string source, string toCheck, StringComparison comp)
{
return source.IndexOf(toCheck, comp) >= 0;
}
现在关键是我试图弄清楚在哪里/如何包含它,以便在整个解决方案(包含多个项目,每个项目都有自己的命名空间和类)中,它可以很容易地通过字符串访问。包含而无需执行 class.string.Contains 或其他方式。
假设有一个项目'Util'包含在所有其他项目中,有没有办法我可以把它放在 Util 中(没有类?),以便它可以作为 string.Contains 在解决方案中全局引用?
这甚至可能吗?如果有怎么办?
【问题讨论】:
-
C# 中的方法不允许在全局范围内声明。只有类、结构和委托是。
-
所以没有办法“实现”所需的功能?唯一的答案是在每个需要它的类中包含该方法?
标签: c# global-scope turkey-test