Отключение создания таблицы EF - PullRequest
0 голосов
/ 28 июня 2018

В моем приложении я использую EF6 для сопоставления с существующей базой данных, где у меня нет контроля над схемой.

Когда первый вызов Db сделан, я получаю исключение, когда создание таблицы не разрешено, что не допускается, и инициализация базы данных должна быть отключена.

System.Data.SqlClient.SqlException (0x80131904): CREATE TABLE permission denied in database 'ADatabase'.

Я использовал различные способы отключения инициализации, используя как код, так и конфигурацию, но ни один из них, похоже, не работает.

https://msdn.microsoft.com/en-us/data/jj680699 https://msdn.microsoft.com/en-us/data/jj556606

Я пытался реализовать DbConfiguration для автоматического обнаружения, явно вызывая его в моем Application_Start, а также Database.SetInitializer<MyContext>(null); в ctor для контекста.

Конфигурация была настроена согласно Инициализаторам базы данных в статье MSDN, указанной выше (пример ниже)

<contexts> 
  <context type=" Blogging.BlogContext, MyAssembly" disableDatabaseInitialization="true" /> 
</contexts>

Использование EF 6.1.3, .NET 4.6 и SQL Server 2008

...