Looking for c# Keywords? Try Ask4Keywords

C# Language Методы расширения как строго типизированные обертки


пример

Методы расширения можно использовать для написания сильно типизированных оболочек для словарных объектов. Например, кеш, 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;
}

Этот подход устраняет необходимость использования строковых литералов в качестве ключей по всей кодовой базе, а также необходимость литья требуемого типа во время операции чтения. В целом он создает более безопасный, строго типизированный способ взаимодействия с такими свободно типизированными объектами, как словари.