Правильный способ заменить сервис в Entity Framework Core 2.0 - PullRequest
0 голосов
/ 17 декабря 2018

Я разрабатываю вспомогательную библиотеку для EF Core , и в настоящее время она работает, предоставляя собственный класс DbContext, но я хочу добавить способ использовать его без специального базового класса.Я могу добиться этого, унаследовав от StateManager и указав EF использовать мою реализацию для IStateManager.

Я нашел два варианта указания EF использовать мою реализацию:

Первый просто вызывает DbContextOptionsBuilder.ReplaceService Method .

Второй способ - привести DbContextOptionsBuilder к IDbContextOptionsBuilderInfrastructure, вызвать AddOrUpdateExtension, передать экземпляр IDbContextOptionsExtension и в ApplyServices вызов метода ServiceCollectionServiceExtensions.AddScoped.

Какой из этих двух вариантов является предпочтительным?Есть ли разница между этими двумя подходами?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...