错误的:
public partial class Form2 : Form
可能的原因:
public static IChromosome To<T>(this string text)
{
return (IChromosome)Convert.ChangeType(text, typeof(T));
}
尝试(没有static关键字):
public IChromosome To<T>(this string text)
{
return (IChromosome)Convert.ChangeType(text, typeof(T));
}
如果您删除“这个”从参数它应该工作。
public static IChromosome To<T>(this string text)
应该:
public static IChromosome To<T>(string text)
包含扩展的类必须是静态的。 您现在的位置:
public partial class Form2 : Form
这是不是一个静态类。
您需要创建一个类,如下所示:
static class ExtensionHelpers
{
public static IChromosome To<T>(this string text)
{
return (IChromosome)Convert.ChangeType(text, typeof(T));
}
}
为了遏制扩展方法。
因为你的包含类也不是一成不变的,扩展方法应该是一个静态类中。 这个类应该不嵌套为好。 扩展方法(C#编程指南)
我的问题造成的,因为我创造了局部类中的静态方法:
public partial class MainWindow : Window{
......
public static string TrimStart(this string target, string trimString)
{
string result = target;
while (result.StartsWith(trimString)){
result = result.Substring(trimString.Length);
}
return result;
}
}
当我删除的方法,错误就走开了。