Наша организация должна иметь единую базу данных, мульти-арендатор
(по схеме таблицы, а не по архитектуре арендатора).
Здесь есть замечательная статья о том, как начать с такого рода вещей здесь: http://romiller.com/2011/05/23/ef-4-1-multi-tenant-with-code-first/
В середине статьи это написано:
Вы заметите (возможно, с некоторым недоумением), нам нужно написать код для настройте схему таблицы для каждого объекта. Понятно, что arent многие магические единороги, пасущиеся вокруг этого кода... в будущих версиях EF мы сможем заменить это на более чистое пользовательское соглашение.
Наша цель состоит в том, чтобы иметь самый чистый способ иметь один класс контекста, который мы можем использовать для подключения к нескольким схемам, которые имеют одну и ту же модель.
( Обратите внимание, что modelBuilder.HasDefaultSchema не кажется достаточным, поскольку он применяется только тогда, когда EF инициализирует первый раз и запускает OnModelCreating)
Существует ли вышеупомянутое экологически чистое пользовательское соглашение в EF5 или EF6?
Или есть более чистый способ справиться с этим каким-то образом?
Примечание. Я также задал этот вопрос на форуме по разработке, поскольку он, по-видимому, больше относится к направлению EF, но хотел посмотреть, есть ли у кого-нибудь альтернативы.
Примечание2: меня не беспокоят миграции, мы будем обрабатывать это отдельно.