Können Sie eine Erweiterungsmethode statisch / gemeinsam verwenden?

8

OK, ich habe hier wahrscheinlich etwas falsch verstanden, aber soweit ich sehen kann ...

  • Eine Erweiterungsmethode muss in einem Modul enthalten sein, nicht in einer Klasse
  • Sie können keine Methoden in Modulen Static / Shared
  • erstellen
  • Daher können Sie keine Erweiterungsmethode für eine Klasse verwenden, ohne sie zu instanziieren.

Mit anderen Worten, Sie können keine Erweiterungsmethode für String "MyExtensionMethod" verwenden und verwenden:

%Vor%

Aber stattdessen ..

%Vor%

Stimmt das? Oder gibt es eine Möglichkeit, dass ich Erweiterungsmethoden als statische Methoden verwenden kann?

    
Matt Thrower 21.05.2010, 09:04
quelle

1 Antwort

9

Sie haben Recht. Erweiterungsmethoden können nur auf Instanzen eines Typs angewendet werden.

Und nein, leider gibt es keine schlaue Möglichkeit, Erweiterungsmethoden zu schreiben, die auf die Typen selbst einwirken und sich wie statische Methoden verhalten.

    
LukeH 21.05.2010, 09:08
quelle

Tags und Links