Entity Framework DefaultConnectionFactory игнорируется
используя Entity Framework 5 с Code First. Я'мы написали обычайIDbConnectionFactory
который я хочу использовать для всех соединений, сделанных моимDbContext
класс, так рано в приложении »S жизненный цикл, прежде чем любая работа с базой данных будет сделано, я звоню
Database.DefaultConnectionFactory = new MyConnectionFactory();
Тем не мение,MyConnectionFactory.CreateConnection
никогда не называется, что наводит меня на мысль, что EF 's изменил его обратно - но отладчик показывает, что этовсе ещеMyConnectionFactory
после нескольких запросов. По какой-то причине этопросто не использую его.
мойDbContext
инициализируется передачей имени строки подключения из файла app.config, и эти строки подключения указывают явного поставщика (как это и должно быть), поэтому я 'мне интересно, если этоs вызывает переопределение для каждого соединения фабрики соединений на основе строки соединения. Это происходит, и могу ли я остановить это без регистрации совершенно нового поставщика (хотя, может быть, этоне слишком ли сложно это сделать?).
Все, что я вижу в Интернете по этому поводу (очень скрыто тегом defaultConnectionFactory в различных примерах app.config), позволяет предположить, что вы можете просто изменить егоIDbConnectionFactory
экземпляр по вашему выбору иЯ буду работать, но мой нетт себя
Цель этого состоит в том, чтобы позволить мне запускать определенный набор операторов SQL при каждом открытии нового соединения, поэтому вторая часть этого вопроса была бы: кто-нибудь знает лучший способ сделать это?