如何調用擴展對象類的Display方法?如果它們都存在,如何調用Foo(this對象)而不是Foo(this T t)?
static class Tools
{
public static void Display<T>(this T t)
{
Console.WriteLine("generic: " + t.GetType());
}
public static void Display(this object o)
{
Console.WriteLine("object: " + o.GetType());
}
}
class Program
{
static void Main(string[] args)
{
int i = 100;
// all will invoke the generic version.
Tools.Display<int>(i);
i.Display();
Tools.Display(i);
}
}
+1用於指定兩種方式,因爲OP聲明它是擴展方法。 – BoltClock 2010-10-14 05:57:59