Модель пользователя (клиент или агент)

Класс-родитель: JavelinModelV2.Users.BaseUser

Использование

данная модель используется в том случае, если мы хотим добавить какие-либо поля к модели пользователя клиента или агента.

Например, мы хотим добавить к модели пользователя клиента булевый признак того, что ему не нужна авторизация, для этого мы:

 

1. создать dto-класс, в котором описывается наше расширение (т. е. контейнер дополнительных полей) и имплементировать для него интерфейс IXmlConvertible - методы сериализации и десериализации в xml (ToXml/FromXml).

2. создать класс-наследник от BaseUser, в котором в generic-контейнер ExtensionData будет помещен объект описанного выше класса и имплементировать все base-конструкторы:

Далее доступ к созданной настройке можно получить таким образом:



new ClientWithAuthorizationException(123).ExtensionData.AuthorizationIsNotRequired