Откройте файл App.config из IDesignTimeDbContextFactory <T> - PullRequest
1 голос
/ 29 января 2020

Чтобы выполнить миграцию через Entity Framework Core, я создал фабрику времени разработки, как описано в этой статье . В настоящее время я реализовал это, что, кажется, работает:

public StudentContextCreateDbContext(string[] args)
{
    string connectionString = "Data Source=localhost;Initial Catalog=MyCatalog;Integrated Security=True;";
    var optionsBuilder = new DbContextOptionsBuilder<StudentContext>();
    optionsBuilder.UseSqlServer(connectionString);
    return new StudentContext(optionsBuilder.Options);
}

Однако я бы предпочел не использовать жестко закодированную строку подключения. Вместо этого я пробовал эту строку, чтобы получить ее из App.config:

string connectionString = ConfigurationManager.ConnectionStrings["Local"].ConnectionString;

, которая возвращает точно такую ​​же строку подключения, только из файла App.config. Он работает в реальном приложении, но когда я использую его с фабрики времени разработки, я получаю System.NullReferenceException.

Как я могу совместно использовать одну и ту же строку соединения между моим приложением и фабрикой времени разработки, не поддерживая вручную оба?

...