Использование базы данных для каждого клиента.Базы данных должны иметь одинаковую схему.Изменение сопоставления во время выполнения не является хорошей идеей.
Редактировать:
Модель для каждого клиента означает EDMX для каждого клиента.Помните, что метаданные являются общими.Таким образом, в мультитенантном приложении (именно так я понимаю ваше описание) каждое изменение метаданных будет изменять метаданные для каждого запроса.Также использование отдельной базы данных выглядит как лучшая архитектура с точки зрения безопасности и производительности.
Другой вопрос, можно ли изменить метаданные во время выполнения.Метаданные хранятся в MetadataWorkspace
.Вы можете прочитать их, но я не уверен, что вы также можете изменить их (я проверю это в выходные).