Code-First миграции всегда по умолчанию для локальной БД

Я столкнулся и решил эту проблему давным-давно, но забыл, как я ее решил...

У меня есть n-уровневая структура с 4 проектами (модели, данные, сервис, Интернет) и я не могу заставить Code-First Migrations использовать правильную строку подключения. Я установил строку подключения в Web.Config и установил веб-проект в качестве стартового проекта по умолчанию для решения. Но независимо от того, когда я инициализирую или обновляю миграции, создается новая локальная база данных .mdf по умолчанию.


comment
Существуют различные значения по умолчанию и соглашения, но я предпочитаю просто добавить именованную строку подключения в файл web.config (который можно преобразовать для различных сред), а затем добавить ее в конструктор контекста. entityframeworktutorial.net/code-first/   -  person Steve Greene    schedule 24.09.2017
comment
Прямо перед тем, как прочитать ваше предложение, я только что понял, что строка подключения, указанная в качестве базы контекста, была названа иначе, чем в web.config: S   -  person ohanaman    schedule 24.09.2017


Ответы (1)


Наконец-то я нашел ответ в другом потоке... Проблема заключалась в том, что имя моей строки подключения, указанное в моей базе DbContext, не соответствовало фактическому имени моей строки подключения в моем файле web.config.

public class WWJEntities : DbContext
{
    public WWJEntities() : base("WWJEntities") { }

а также

<add name="WWJ" connectionString="Data Sou...

Как только я изменил name="WWJ" на name="WWJEntities", все заработало, как и ожидалось. Пока это совпадает, и у вас есть строка подключения в проекте запуска решения, вы в золоте.

person ohanaman    schedule 24.09.2017