StorageObject - класс |
Класс, являющийся строго типизированным декоратором для хранилища IDictionary<string, object> и имеющий заранее определённый набор строго типизированных свойств.
Класс устанавливает, что значения по умолчанию этих свойств не должны содержаться в хранилище, а свойства с вложенными элементами вида IDictionary<string, object> или IEnumerable должны создаваться автоматически при первом доступе.
Пространство имён: Tessa.Platform.Storage
[SerializableAttribute] public abstract class StorageObject : IStorageObjectProvider, IStorageDictionaryProvider, IStorageProvider, IStorageCachePolicyProvider, ISerializable, IBinarySerializable, IBsonSerializable, IJsonSerializable
Тип StorageObject предоставляет следующие члены.
Имя | Описание | |
---|---|---|
StorageObject(DictionaryString, Object) | Создаёт экземпляр класса с указанием хранилища, декоратором для которого является создаваемый объект. | |
StorageObject(SerializationInfo, StreamingContext) |
Создаёт экземпляр класса, десериализованный с использованием переданного
объекта [System.Runtime.Serialization.SerializationInfo].
|
Имя | Описание | |
---|---|---|
CleanCollectionAndSetNullIfEmpty |
Очищает коллекцию, найденную по ключу key, после чего устанавливает null
на место коллекции, если она стала пустой.
| |
ClearCache |
Очищает внутренний кэш декораторов.
| |
ContainsKey |
Возвращает признак того, что элемент с заданным ключом содержится в хранилище.
| |
EnsureCacheResolved |
Инициализирует объект-обёртку для всех значений, в т.ч. для вложенных объектов.
Рекомендуется выполнять при создании заполненного объекта перед асинхронным обращением к его вложенным объектам.
| |
Equals | Determines whether the specified object is equal to the current object. (Унаследован от Object.) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Унаследован от Object.) | |
FromJsonCore |
Устанавливает содержимое объекта в соответствии с данными, десериализованными из текстового JSON.
Возвращает текущий объект для цепочки вызовов.
Рассмотрите использование метода ToTypedJson(Boolean) для сериализации с сохранением полной информации по типам,
которую можно будет восстановить в методе FromTypedJson.
| |
FromTypedJsonCore |
Устанавливает содержимое объекта в соответствии с данными, десериализованными из текстового JSON с сохранением типов.
Используйте метод ToTypedJson(Boolean) для сериализации с сохранением типов.
Для десериализации других объектов, у которых нет метода FromTypedJson (например, request/response),
используйте метод DeserializeFromTypedJson(String),
записав полученную структуру в объект obj.SetStorage(storage).
| |
GetT(String) |
Возвращает строго типизированное значение объекта из хранилища по заданному ключу.
| |
GetT(String, FuncObject) |
Возвращает строго типизированное значение объекта из хранилища по заданнному ключу
с указанием фабрики defaultValueFunc, создающей значение по умолчанию и
добавляющей его в хранилище, если оно было равно null.
| |
GetDictionaryT |
Возвращает декоратор для коллекции пар ключ / значение, полученный из хранилища
по заданному ключу или созданный посредством заданной фабрики defaultDictionaryFunc,
и добавленный в хранилище, если он там отсутствует.
| |
GetHashCode | Serves as the default hash function. (Унаследован от Object.) | |
GetListT |
Возвращает декоратор для коллекции объектов, полученный из хранилища
по заданному ключу или созданный посредством заданной фабрики defaultListFunc,
и добавленный в хранилище, если он там отсутствует.
| |
GetObjectData |
Записывает сериализованные данные текущего объекта в указанный
объект [System.Runtime.Serialization.SerializationInfo].
| |
GetStorage |
Возвращает хранилище Dictionary<string, object>,
декоратором для которого является текущий объект.
| |
GetType | Gets the Type of the current instance. (Унаследован от Object.) | |
Init |
Инициализирует значение объекта с заданным ключом, если он отсутствовал в хранилище.
| |
InitNotNull |
Инициализирует значение объекта с заданным ключом, если он отсутствовал в хранилище или был равен null,
посредством фабрики объектов.
| |
MemberwiseClone | Creates a shallow copy of the current Object. (Унаследован от Object.) | |
Remove |
Удаляет объект с заданным ключом из хранилища.
| |
SetT |
Устанавливает значение в хранилище по заданному ключу.
При этом не изменяется внутренний кэш декораторов, поэтому метод следует использовать
только для примитивных типов.
| |
SetNull |
Устанавливает значение null для элемента по заданному ключу и
удаляет предыдущий элемент из внутреннего кэша декораторов.
| |
SetNullIfEmptyEnumerable | ||
SetStorage(DictionaryString, Object) |
Устанавливает хранилище Dictionary<string, object>,
декоратором для которого является текущий объект,
посредством копирования значений из заданного хранилища.
Если текущий объект реализует IStorageNotificationReceiver,
то для него вызывается метод NotifyStorageUpdated.
| |
SetStorage(IStorageObjectProvider) |
Устанавливает хранилище Dictionary<string, object>,
декоратором для которого является текущий объект,
посредством копирования значений из хранилища заданного объекта.
Если текущий объект реализует IStorageNotificationReceiver,
то для него вызывается метод NotifyStorageUpdated.
| |
SetStorageValue |
Устанавливает значение объекта, реализующего IStorageProvider, в хранилище по заданному ключу.
При этом также изменяется внутренний кэш декораторов, поэтому метод следует использовать
для декораторов.
| |
ToDynamic |
Возвращает объект, осуществляющий доступ к хранилищу, декоратором для которого является текущий объект,
через позднее связывание.
| |
ToJson |
Сериализует объект в текстовый JSON.
Рассмотрите использование метода ToTypedJson(Boolean) для сериализации с сохранением полной информации по типам,
которую можно будет восстановить в методе FromTypedJson.
| |
ToString | Returns a string that represents the current object. (Унаследован от Object.) | |
ToTypedJson |
Сериализует объект в текстовый JSON с сохранением информации по типам для всех подобъектов, в т.ч. для Info.
Используйте метод FromTypedJson для десериализации.
Для сериализации других объектов, у которых нет метода ToTypedJson (например, request/response),
используйте метод SerializeToTypedJson(DictionaryString, Object, Boolean),
передав в него структуру объекта obj.GetStorage().
| |
TryGetT |
Возвращает строго типизированное значение объекта из хранилища по заданному ключу
или default(T), если объект по заданному ключу не найден.
| |
TryGetDictionaryT |
Возвращает строго типизированное значение объекта Dictionary<string, object>
из хранилища по заданному ключу или default(T),
если объект по заданному ключу не найден.
| |
TryGetListT |
Возвращает строго типизированное значение объекта List<object>
из хранилища по заданному ключу или default(T),
если объект по заданному ключу не найден.
| |
TryGetString |
Возвращает строковое представление для значения объекта из хранилища по заданному ключу
или null, если объект по заданному ключу не найден.
|
Имя | Описание | |
---|---|---|
BinaryDataSerializationKey |
Ключ, описывающий сериализованное состояние объекта в виде байтового массива,
которое задаётся или получается посредством объекта [System.Runtime.Serialization.SerializationInfo].
|
Имя | Описание | |
---|---|---|
Get | (Определяется ComHelper.) | |
InternalMarkerCanvas |
Возвращает маркер аннотации
(Определяется AnnotationInternalsAccessor.) | |
Invoke | (Определяется ComHelper.) | |
Set | (Определяется ComHelper.) | |
ToSerializable |
Возвращает сериализуемый объект, полученный для заданного объекта, предоставляющего доступ
к хранилищу Dictionary<string, object>.
(Определяется StorageExtensions.) |