Могу ли я перехватить создание схемы в ef core? ⇐ C#

Место общения программистов C#
Anonymous
Могу ли я перехватить создание схемы в ef core?

Сообщение Anonymous »

Есть ли способ перехватить создание схемы. Я имею в виду что-то вроде этого.
У меня есть регистрация контекста базы данных следующим образом:

Код: Выделить всё

Services.AddDbContext(options => options
.UseSqlServer()
.MyExtensionMethod())
Этот мой метод расширения расширяет DbContextOptionsBuilder, и мне нужно перехватить метод OnModelCreating из этого метода.
Моя цель — когда пользователь вызывает этот метод расширения , я добавлю еще одну сущность в этот контекст базы данных с помощью конфигурации ModelBuilder.Entity.
Эта новая сущность на самом деле является классом в моей библиотеке (этот метод расширения также является частью эту библиотеку). Поэтому я хочу перехватить создание схемы пользователей из MyExtensionMethod и добавить в нее новую таблицу. Как я могу это сделать?
Я пробовал использовать IModelCustomizer, но проблема в том, что он должен заменить текущую реализацию, и я боюсь ее использовать, потому что, возможно, пользователь использует некоторые собственный настройщик, и я заменю его своим методом расширения. Это нарушит функциональность пользователей.
Возможно, будет очень полезно, если я каким-то образом украсю текущий IModelCustomizer, но когда я попробовал, я не смог найти способа сделать это

Подробнее здесь: https://stackoverflow.com/questions/791 ... in-ef-core

Вернуться в «C#»