Сколько классов DbContext мне нужно иметь? - PullRequest
0 голосов
/ 29 января 2020

Вот что я хотел бы знать.

Допущения:

  1. Это 2020 год, а не 2010
  2. Одна база данных, содержащая все соответствующие объекты
  3. Один веб-API
  4. Использование Entity Framework

Вопрос:

Обычно считается наилучшей практикой разбивать сущности EF на ...

  1. Отдельный DbContext (и репозиторий) для каждой сущности?
  2. Один DbContext, чтобы управлять ими всеми?
  3. Что-то среднее?

Повлияло ли на производительность, техническое обслуживание и / или модульное тестирование так или иначе? Это, фактически говоря, мой первый родео, я не уверен в последствиях своего выбора и был бы признателен за вклад других, кто продвинулся дальше по этому пути.

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

Я мог бы просто выбросить эти объекты в том же контексте, который используется таблицей, к которой они предоставляют поиски.

Или я мог бы сделать еще больше, и вытащить дюжину связанных сущностей под эгидой одного DbContext.

Или я мог бы просто буквально объединить всю базу данных в один DbContext.

И я не могу сказать, есть ли правильный или неправильный ответ, или даже если это имеет значение на практике.

Я нашел несколько связанных вопросов, но они либо задавались долгое время go, либо не были такими же. (В частности, я не спрашиваю о том, какую область применения использовать, , так как этот ответ, я считаю, хороший .)

Я включил ниже некоторые релевантные ссылки, которые нашел до настоящего времени.

когда должен создать, новый-dbcontext

linq-and-datacontext

использование-нескольких-dbcontext-in-one-application

сколько-сколько-dbcontexts-должен-я-иметь

как-много-DbContext-подклассов-должен-я-у-в-отношение-к-моя-модель

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