Почему мой проект web.api все еще ищет файл .mdf?

У меня есть первый проект web.api кода, который отлично работал с автоматически созданным .mdf в папке App_Data. Я решил переместить свое приложение в IIS и изменить конфигурацию пула приложений, чтобы загрузить профиль пользователя, опять же, без проблем. Затем я загрузил .mdf в Visual Studio sql explorer, и в этот момент вход в пул приложений из веб-приложения начал давать сбой. Понятия не имею, почему и не мог это исправить, поэтому я решил использовать sql express вместо того, чтобы тратить на это больше времени. Итак, я установил SQL Express, убил все свои миграции и изменил строку подключения web.config на:

<connectionStrings>
    <add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="Data Source=.;Initial Catalog=MyApp;Integrated Security=SSPI"/>
</connectionStrings>

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

Не удается прикрепить файл «C: \ Users \ Source \ MyApp \ Main \ Solution \ MyApp.API \ App_Data \ MyApp.DataService.DataModel.AppEntities.mdf» как базу данных «MyApp.DataService.DataModel.AppEntities».

Что ж, это имеет смысл, поскольку я удалил его, но почему мое приложение все еще пытается подключиться к файлу .mdf? Его больше нет, и я изменил соединение по умолчанию. Я искал решение, ссылающееся на файл .mdf, но ничего не обнаружилось. Что мне не хватает?


person sonicblis    schedule 18.06.2014    source источник


Ответы (1)


Я наконец понял, что мне пришлось назвать свою строку подключения так же, как мой класс DbContext, поэтому в моем случае:

<connectionStrings>
    <add name="AppEntities" providerName="System.Data.SqlClient" connectionString="Data Source=.;Initial Catalog=MyApp;Integrated Security=SSPI"/>
</connectionStrings>

чтобы соответствовать моему производному классу DbContext

namespace MyApp.DataService.DataModel
{
    internal class AppEntities : DbContext
person sonicblis    schedule 18.06.2014