【发布时间】:2017-01-31 04:48:41
【问题描述】:
我想在String类下添加如下方法IsProcess(string str)
例如String.IsNullOrEmpty(str)
public bool IsProcess(string str)
{
bool flag = false;
// LOGICS
retrun flag;
}
我不期望像"Value".IsProcess()这样的扩展方法方面的解决方案
public static bool IsProcess(this string str)
{
bool flag = false;
// LOGICS
retrun flag;
}
我的期望是
String.IsProcess(value)
请帮助我。
【问题讨论】:
-
如果没有扩展方法,它可能是不可能的。另外,
String类是 sealed ,所以你不能扩展它。 -
您不能将任意静态方法添加到类中。没有这种能力。您可以通过扩展方法向对象“添加”实例方法……但这是完全不同的事情。
-
c# 不提供 javascript 原型之类的功能,字符串类也是密封的,您无法从中创建包装器。
-
如果是你想要的静态方法,在这个类还是那个类有什么关系? C# 不允许您向 System.String 等另一个程序集中的类型添加静态方法。
标签: c# string methods extension-methods static-methods