Comment écrivez-vous un C# Méthode d'Extension pour un Générique Tapé Classe

Ce devrait être simple.

Je voudrais ajouter une méthode d'extension pour le Système.Web.Mvc.ViewPage< T > class.

Comment faut-il de la méthode d'extension de look?

Ma première pensée intuitive est quelque chose comme ceci:

namespace System.Web.Mvc
{
    public static class ViewPageExtensions
    {
        public static string GetDefaultPageTitle(this ViewPage<Type> v)
        {
            return "";
        }
    }
}

Solution

La solution générale est cette réponse.

La solution spécifique à l'extension du Système.Web.Mvc.ViewPage classe est ma réponse ci-dessous, qui a commencé à partir de la solution générale.

La différence est dans le cas précis, vous avez besoin d'un générique tapé déclaration de méthode ET d'une déclaration à faire respecter le type générique comme un type de référence.

OriginalL'auteur Matt Mitchell | 2008-09-16