Многоуровневый и пул подключений с использованием EF 6

connection-pooling entity-framework entity-framework-6

Вопрос

Мы разработали приложение с несколькими арендаторами, использующее EF 4.3 Code First Model, где каждый арендатор будет иметь свою собственную отдельную базу данных. Поскольку мы ожидаем немного большого количества арендаторов, мы хотим поддерживать пул соединений между арендаторами.

Чтобы достичь этого в EF 4.3 Code First, мы создали базу данных «AppMaster» и создали собственного поставщика, используя EFProviderWrapperToolkit, который использует только SQL-провайдер. Наш заказчик всегда будет сначала подключаться к базе данных «AppMaster», а затем изменять базу данных в соответствующую конкретную базу данных арендатора. Все работало нормально, как ожидалось.

Но тот же провайдер не работает с EF6, так как они переместили код провайдера в EntityFramework DLL в пространство имен System.Data.Entity.Core.Common.

Любое решение для поддержания пула соединений для всех арендаторов, указывающих на соответствующую базу данных на тот же сервер базы данных?

Популярные ответы

Модель поставщика в EF6 изменилась. Прежде всего, вам нужно использовать поставщика EF6. Если вы используете Sql Server, поставщик EF6 Sql Server входит в пакет EF6. Поскольку поставщик упаковки является всего лишь другим поставщиком, вы должны прочитать и следовать документу о перестройке поставщика для EF6, и поставщик упаковки должен продолжать работать. Обратите внимание, что документ содержит раздел об обертывании провайдеров в EF6. Кроме того, в EF6 мы ввели инжекцию зависимостей и конфигурацию на основе кода, которая упрощает некоторые аспекты упаковки.




Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему
Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему