Razbezhkin
@Razbezhkin
программист, преподаватель

Как методу C# «узнать», кто текущий пользователь, если он используется в разных типах приложений (ASP.NET, Console, WinForms и т.п.)?

Архитектурный вопрос.
Предположим, есть какой-то класс, который выполняет некоторую логику, в которой необходимо использовать имя текущего пользователя. Этот класс может быть использован в разных приложениях, но способы получения имени пользователя в каждом приложении разные, например, в веб приложении - это кто авторизовался в приложении, а в консольном - кто его запустил.
Вопрос: как правильно архитектурно построить этот класс, чтобы он прозрачно выполнял свою работу в любом типе приложений?

Мне приходит на ум сделать зависимость от интерфейса, который занимается тем, что определяет текущего пользователя, в каждом типе приложений реализовать его по своему, и через dependency injection внедрять нужную зависимость в мой класс непосредственно в приложении любого типа.

Хорош ли такой подход? Есть ли более изящные и правильные решения?
  • Вопрос задан
  • 243 просмотра
Пригласить эксперта
Ответы на вопрос 1
NYMEZIDE
@NYMEZIDE
резюме - ivanfilatov.ru
Мне приходит на ум сделать зависимость от интерфейса, который занимается тем, что определяет текущего пользователя, в каждом типе приложений реализовать его по своему, и через dependency injection внедрять нужную зависимость в мой класс непосредственно в приложении любого типа

Хорош ли такой подход?.


Вполне.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы