Является ли внедрение DbContextOptions анти-паттерном? - PullRequest
0 голосов
/ 26 февраля 2020

При создании приложений WPF я склоняюсь к тому, чтобы ViewModel вставлял DbContexts в классы обслуживания при создании.

Однако все было бы намного чище, если бы я мог внедрить класс обслуживания в ViewModel. Но это привело бы к риску долгоживущих DbContexts, если пользователь слишком долго остается в одном и том же представлении.

Чтобы решить эту проблему, можно предварительно определить DbContextOptions, а затем ввести его в сервис от ViewModel. А затем пусть служба инициализирует DbContext только тогда, когда это необходимо, используя эти параметры. Это позволило бы тестировать через InMemory и предотвратить долгоживущие контексты. Для меня это звучит как беспроигрышная ситуация ... За исключением того, что я никогда не видел, чтобы кто-нибудь еще делал это, что обычно является предупредительным знаком.

Я что-то пропустил? Это анти-паттерн или кодовый запах?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...