Можете ли вы иметь DbContext, который связан с несколькими базами данных?

У меня есть пользовательская база данных, в которой хранится вся пользовательская информация, а также разрешения для приложений и т. Д. Если у меня есть общая база данных, как описано, а затем другие базы данных для каждого веб-приложения, могу ли я связать базы данных, чтобы установить взаимосвязи между двумя базами данных, используя Fluent API или Code First? Для этого нет таких изящных способов, но я хотел сначала задать вопрос, прежде чем связываться с пользовательским решением.

Например: 1 DbContext, DbSets для каждой таблицы в 2 базах данных. Возможность связывать сущности между базами данных с помощью Fluent API.

Заранее спасибо.

1 ответ

Решение

Ответ - нет. Контекст связан с одной базой данных. Нет даже простого способа взломать это, потому что контекст все еще может создавать запросы только для одной базы данных, поэтому, если вы хотите иметь доступ к нескольким базам данных, вам нужен либо контекст для каждой базы данных (не существует кросс-контекстных запросов или отношений), либо вы необходимо выставить все таблицы из других баз данных как представления или псевдонимы в базе данных, используемой контекстом.

Другие вопросы по тегам