Ich bin ein Fan von Erweiterungsmethoden in C #, hatte aber keinen Erfolg beim Hinzufügen einer Erweiterungsmethode zu einer statischen Klasse wie Console.
Wenn ich beispielsweise der Konsole eine Erweiterung mit dem Namen 'WriteBlueLine' hinzufügen möchte, damit ich gehen kann:
Console.WriteBlueLine("This text is blue");
Ich habe dies versucht, indem ich eine lokale, öffentliche statische Methode mit Console als 'this'-Parameter hinzugefügt habe ... aber keine Würfel!
public static class Helpers {
public static void WriteBlueLine(this Console c, string text)
{
Console.ForegroundColor = ConsoleColor.Blue;
Console.WriteLine(text);
Console.ResetColor();
}
}
Dies hat der Konsole keine 'WriteBlueLine'-Methode hinzugefügt ... mache ich das falsch? Oder nach dem Unmöglichen fragen?
Helpers.WriteBlueLine(null, "Hi");
:)