StorageExtensions - класс

Методы-расширения для пространства имён Tessa.Platform.Storage.

Definition

Пространство имён: Tessa.Platform.Storage
Сборка: Tessa (в Tessa.dll) Версия: 3.6.0.23
C#
public static class StorageExtensions
Inheritance
Object    StorageExtensions

Методы

DeserializeWithStorageSupport Десериализует объект указанного типа type с поддержкой типов данных, сериализуемых как хранилище, в т.ч.: IStorageDictionaryProvider, IStorageListProvider, IStorageSerializable и коллекция объектов IStorageSerializable. Выполняет стандартную десериализацию для других типов объектов.
FromBase64String<T> Устанавливает данные объекта, десериализованные из строки base-64, и возвращает этот объект.
FromBson<T> Устанавливает данные объекта, десериализованные из Bson, и возвращает этот объект.
FromDictionary<T> Устанавливает данные объекта, используя переданную коллекцию пар ключ / значение в качестве хранилища, и возвращает этот объект.
FromJson<T> Устанавливает данные объекта, десериализованные из текстового представления Json, и возвращает этот объект.
FromJsonString<T> Десериализует объект из JSON-строки с учетом сериализации типов, используя конвертер TypedJsonConverter.
FromSerializedDictionary<T> Десериализует нетипизированный словарь.
FromTypedDictionary<T> Десериализует типизированный словарь в объект.
Get<T> Возвращает значение из хранилища IDictionary<string, object>, полученное по ключу key и приведённое к типу T.
GetOrAdd<TGet, TDefault> Возвращает либо значение из хранилища IDictionary<string, object>, полученное по ключу key и приведённое к типу TGet при его наличии, либо возвращает значение, созданное вызовом конструктора по умолчанию для типа TDefault, если запрошенное значение отсутствовало в хранилище, и устанавливает его в storage.
GetSerializedEnum<T> Извлекает из хранилища объект перечисляемого типа.
GetSerializedList<T> Извлекает список нетипизированных объектов из хранилища.
GetSerializedObject<T> Извлекает нетипизированный объект из хранилища.
GetTypedList<T> Извлекает из хранилища список типизированных объектов.
GetTypedObject<T> Извлекает из словаря объект, сериализованный с сохранением типа.
GetTypedObjectDictionary<T> Десериализует сложный типизированный словарь [string, T].
MergeFrom<T> Копирует данные из коллекции ключ / значение в сериализуемый объект, выполняя слияние с перезаписью уже существующих в текущем объекте данных.
MergeTo Копирует данные из сериализуемого объекта в коллекцию ключ / значение, выполняя слияние с перезаписью уже существующих в заданном объекте данных.
RegisterStorageAPI 
ToBase64String Сериализует объект в виде строки base-64.
ToDynamic<T> Возвращает объект, осуществляющий доступ к хранилищу IDictionary<string, object> через позднее связывание.
ToJsonString<T> Сохраняет объект в JSON-строку с учетом индентации и сериализации типов, используя конвертер TypedJsonConverter.
ToSerializable(Byte[]) Преобразует сериализованные в BSON данные в сериализуемый объект.
ToSerializable(Dictionary<String, Object>) Преобразует коллекцию пар ключ / значение в сериализуемый объект.
ToSerializable(IStorageObjectProvider) Возвращает сериализуемый объект, полученный для заданного объекта, предоставляющего доступ к хранилищу Dictionary<string, object>.
ToSerializable(String) Преобразует сериализованные в JSON данные в сериализуемый объект.
ToSerializedDictionary Сериализует объект в нетипизированный словарь.
ToSerializedList<T> Сериализует список объектов в список нетипизированных словарей.
ToTypedDictionary<T> Сериализует объект в типизированное хранилище.
ToTypedList<T> Сериализует список объектов в список типизированных хранилищ.
ToTypedObjectDictionary<T> Сериализует сложный словарь [string, T] в словарь типизированных словарей.
TryGet<T>

Возвращает либо значение из хранилища IDictionary<string, object>, полученное по ключу key и приведённое к типу T при его наличии, либо возвращает значение по умолчанию defaultValue, если запрошенное значение отсутствовало в хранилище.

Внимание! Если требуется получить значение, которое может присутствовать со значением null, но тип данных не допускает null, например, для типа int, то пишите следующим образом: storage.TryGet<int?>("key") ?? 0

См. также