Я создал проект MVC 4, который использует EF5 Code First с миграциями. Поскольку я был новичком в этой теме, я использовал следующую статью.
Теперь, когда разработка завершена, я хочу опубликовать ее в IIS (я использую FTP или пакет веб-развертывания). Поэтому перед публикацией я изменил строку подключения на правильный сервер базы данных. Но после публикации сайта я получаю исключение при доступе к страницам, использующим БД. Исключения относятся к тому факту, что он не может подключиться к базе данных.
Из-за этих проблем я решил попробовать это локально на другом сервере БД, а не на сервере по умолчанию "(LocalDB)\v11.0". Кстати: "(LocalDB)\v11.0" работает как шарм... Во время отладки я лучше рассмотрел ошибку. Вот изображение ошибки:
Что я уже пробовал:
- Создайте сценарий sql, выполнив «Update-Database -Script -SourceMigration:$InitialDatabase» в консоли диспетчера пакетов. После того, как я запустил этот скрипт на dbserver, чтобы создать файл db. Таблицы были созданы, но ошибка осталась.
- Я изменил свою строку подключения на все виды комбинаций без каких-либо результатов
- Я уже использовал пользовательского пользователя для пула приложений в ISS и дал этому пользователю полные права на сервер БД и базу данных.
Вот самая важная часть моего web.config:
<connectionStrings>
<add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="Data Source=LOCALHOST\MSSQLSERVER;Initial Catalog=ProjectX;Integrated Security=TRUE;MultipleActiveResultSets=True" />
</connectionStrings>
А также
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework">
<parameters>
<parameter value="Data Source=LOCALHOST\MSSQLSERVER; Integrated Security=True; MultipleActiveResultSets=True" />
</parameters>
</defaultConnectionFactory>
</entityFramework>
Мой конструктор класса DBCcontext выглядит так
public DBContext(): base("DefaultConnection")
{
}
Думаю, я что-то упускаю, это первый раз, когда я использую EF Code First с миграциями. Эта проблема действительно сводит меня с ума. У меня нет идей.