C# Language Méthodes d'extension en tant qu'encapsuleurs fortement typés


Exemple

Les méthodes d'extension peuvent être utilisées pour écrire des wrappers fortement typés pour les objets de type dictionnaire. Par exemple un cache, HttpContext.Items à cetera ...

public static class CacheExtensions
{
    public static void SetUserInfo(this Cache cache, UserInfo data) => 
        cache["UserInfo"] = data;

    public static UserInfo GetUserInfo(this Cache cache) => 
        cache["UserInfo"] as UserInfo;
}

Cette approche supprime la nécessité d'utiliser des littéraux de chaîne en tant que clés sur toute la base de code, ainsi que la nécessité de les convertir au type requis pendant l'opération de lecture. Dans l'ensemble, il crée un moyen plus sécurisé et fortement typé d'interagir avec des objets faiblement typés tels que les dictionnaires.