¿Puedo agregar métodos de extensión a una clase estática existente?
Soy fanático de los métodos de extensión en C #, pero no he tenido éxito al agregar un método de extensión a una clase estática, como Console.
Por ejemplo, si quiero agregar una extensión a la consola, llamada 'WriteBlueLine', para poder ir:
Console.WriteBlueLine("This text is blue");
Intenté esto agregando un método estático público local, con la consola como un parámetro 'esto' ... ¡pero sin dados!
public static class Helpers {
public static void WriteBlueLine(this Console c, string text)
{
Console.ForegroundColor = ConsoleColor.Blue;
Console.WriteLine(text);
Console.ResetColor();
}
}
Esto no agregó un método 'WriteBlueLine' a la consola ... ¿Lo estoy haciendo mal? ¿O pedir lo imposible?