Ist es in C# möglich, Erweiterungsmethoden für eine Klasse zu erstellen, aber die Sichtbarkeit/Zugänglichkeit innerhalb einer Klasse einzuschränken? (ZB Erweiterungsmethode A auf Klasse M nur zugänglich in Klasse Z)C# -Erweiterungsmethoden nur innerhalb einer Klasse sichtbar ("privat")
Beispiel:
class A
{
String foo = "";
String bar = foo.MakeMillionaire("arg");
}
In obigem Beispiel möchte ich die Erweiterungsmethode „MakeMillionaire“ Verlängerung der String-Klasse nur sichtbar zu sein, und zugänglich innerhalb der Klasse A. Kann ich das irgendwie tun, indem ich die Erweiterungsmethode in einer statischen Klasse innerhalb der Klasse A definiere?
Bearbeiten: Wenn Sie eine reguläre geschachtelte Klasse versuchen, ergibt sich "Fehler: Erweiterungsmethoden müssen in einer statischen Klasse auf oberster Ebene definiert werden".
Wenn Sie dies versuchen, was passiert? –
Ich bekomme "Fehler: Erweiterungsmethoden müssen in einer Top-Level-Klasse definiert werden" .... – Alex