Dies sollte hoffentlich ein einfacher sein.Wie Sie eine C# Erweiterungsmethode für eine generisch typisierten Klasse schreiben
Ich möchte eine Verlängerung Methode zum System.Web.Mvc.ViewPage < T> Klasse hinzuzufügen.
Wie soll diese Erweiterung Methode aussehen?
Mein erster intuitiver Gedanke ist so etwas wie diese:
namespace System.Web.Mvc
{
public static class ViewPageExtensions
{
public static string GetDefaultPageTitle(this ViewPage<Type> v)
{
return "";
}
}
}
Lösung
Die allgemeine Lösung this answer ist.
Die spezifische Lösung zum Erweitern der System.Web.Mvc.ViewPage-Klasse ist my answer unten, die von der general solution gestartet wurde.
Der Unterschied ist im speziellen Fall, dass Sie sowohl eine generisch typisiert Methodendeklaration und eine Erklärung benötigen den generischen Typ als Referenztyp zu erzwingen.
Siehe http: // stackoverflow .com/questions/68750/how-do-you-schreiben-ac-extension-method-for-a-generically-typed-class/68802 # 68802 –