Interface IMemberValueConverter
Определяет правила преобразования значения свойства при выполнении сериализации и десериализации.
Namespace:InfinniPlatform.Serialization
Assembly:InfinniPlatform.Core.Abstractions.dll
Syntax
public interface IMemberValueConverter
Remarks
В некоторых сценариях сериализованное представление экземпляра объекта может отличаться от его естественного вида. Подобные ситуации могут происходить по разным причинам. Например, хранить данные объектов или передавать их по сети удобно в одном виде, а обрабатывать - в другом. Либо способ хранения или обработки информации жестко определен одной из сторон, что часто бывает при работе со сторонними пакетами или системами с жестко определенной структурой данных. В таких ситуациях удобно иметь механизм, который позволяет прозрачно для разработчика делать преобразование одного формата данных в другой и обратно. Для этих целей служит интерфейс IMemberValueConverter, который описывает правила преобразования значений свойств объектов из одного представления в другое и обратно при выполнении операций сериализации и десериализации. На прикладном уровне необходимо реализовать интерфейс IMemberValueConverter и зарегистрировать реализацию в контейнере зависимостей.
Methods
| Improve this Doc View SourceCanConvert(MemberInfo)
Проверяет возможность применения преобразования для указанного свойства.
Declaration
bool CanConvert(MemberInfo member)
Parameters
Type | Name | Description |
---|---|---|
MemberInfo | member | Информация о свойстве. |
Returns
Type | Description |
---|---|
System.Boolean | Значение |
Convert(Object)
Преобразует указанное значение в значение для сериализации.
Declaration
object Convert(object value)
Parameters
Type | Name | Description |
---|---|---|
System.Object | value | Значение для преобразования. |
Returns
Type | Description |
---|---|
System.Object | Значение для сериализации. |
ConvertBack(Func<Type, Object>)
Преобразует указанное значение в значение для десериализации.
Declaration
object ConvertBack(Func<Type, object> value)
Parameters
Type | Name | Description |
---|---|---|
Func<Type, System.Object> | value | Значение для преобразования. |
Returns
Type | Description |
---|---|
System.Object | Значение для десериализации. |