Gibt es einen praktischen Unterschied zwischen diesen beiden Erweiterungsmethoden?Gibt es einen praktischen Unterschied zwischen einer Erweiterungsmethode unter <T> oder auf Objekt?
class Extensions
{
public static void Foo<T>(this T obj) where T : class { ... }
public static void Foo(this object obj) { ... }
}
Ich war Stochern in Extension Overflow und ich kam in der ersten Form, die ich noch nie benutzt haben. Neugierig, was der Unterschied ist.
Außerdem wird die Methode, um die Art des Arguments wissen, auch wenn es 'null' ist, wenn die generische Version. Könnte wichtig sein, oder vielleicht auch nicht. –