我在这里得到一个错误,说该程序无法退出无限循环。
public static class Program
{
public static void Main(string[] args)
{
Object obj = new Object();
Console.WriteLine(obj.GetClassName());
}
public static string GetClassName(this object value)
{
return value.GetClassName();
}
}
答案 0 :(得分:4)
您需要将扩展方法更改为:
return obj.GetType().Name;
您的扩展方法正在调用自身,这会导致无限循环/递归问题。