Сущность Framework 4.1 кода сначала CREATE DATABASE отказано в доступе к базе данных "master" - PullRequest
5 голосов
/ 06 сентября 2011

Я создал общий проект репозитория, используя Entity Framework 4.1, и он прекрасно работает с моими проектами, когда он добавляется в них как существующий проект, но не работает с ними, когда на него ссылаются как на dll.

Iполучить эту ошибку

В базе данных «master» отказано в разрешении CREATE DATABASE.

, но я добавил файл app.config и установил соответствующую строку подключенияк моей базе данных SQL Server 2005 (я использовал DbContext как тип моего контекста)

Пожалуйста, помогите мне.

Вот моя строка подключения:

<configuration>
   <connectionStrings>
      <add name="TasksEntities" 
           connectionString="server=(local); database=Tasks; trusted_connection=false; User=sa; Password=****; Persist Security Info=True" 
           providerName="System.Data.SqlClient"/>
  </connectionStrings>
</configuration>

Ответы [ 3 ]

7 голосов
/ 22 марта 2012

Я просто столкнулся с этим сам.Имя строки подключения должно точно соответствовать имени класса вашего подкласса DbContext.Если это не так, EF не найдет строку подключения и попытается сделать что-то еще (встроенный SQL?), Который не работает на моей машине (у меня установлен полный SQL Server).

2 голосов
/ 16 июня 2015

Вы должны проверить, где настроена ваша строка подключения, если вы работаете с более чем одним проектом, например. Если в вашем начальном проекте в вашем решении настроена строка подключения и в консоли диспетчера пакетов указывается также на проект с настроенными миграциями EF (в «Проект по умолчанию»).

Вы можете запустить с помощью команды в Диспетчере пакетов Update-Database -Verbose Что такое запуск проекта и перенос источника или указать помещение параметров в команду:

Обновление-База данных -SourceMigration MvProject.Data -StartUpProjectName MyProject.Web -Verbose

0 голосов
/ 06 сентября 2011

Похоже, ваши учетные данные в строке подключения должны иметь разрешение на создание базы данных на вашем сервере. Войдите на сервер базы данных и проверьте, есть ли у вашей учетной записи правильные разрешения. Это будет http://www.sqlservercurry.com/2008/04/resolving-create-database-permission.html

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