Как передать строку подключения для Migration в Entity Framework core

196
28 января 2018, 00:08

Есть проект типа .NETStandart 2.0 "DAL.EFcore". Он обеспечивает SQL хранилище данных путем реализации абстрактного репозиотория. Т.е. только в этом проекте есть зависимость от EFCore. Контекст данных зависит от строки подключения.

public sealed class Context : Microsoft.EntityFrameworkCore.DbContext
{
    private readonly string _connString;

    #region Reps
    public DbSet<EfStation> EfStations { get; set; }
    public DbSet<EfRoute> EfRoutes { get; set; }
    #endregion

    public Context(string connString)
    {
        _connString = connString;
        //Отключение Tracking для всего контекста
        ChangeTracker.QueryTrackingBehavior = QueryTrackingBehavior.NoTracking;
    }

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.ApplyConfiguration(new EfRouteConfiguration());
        base.OnModelCreating(modelBuilder);
    }
}

//В проекте WebApi репозиторий получает зависимость
   public void ConfigureServices(IServiceCollection services)
    {
        services.AddMvc();
        //TODO: connString брать из настрек
        var connString = @"Server=(localdb)\mssqllocaldb;Database=MarkSimanDB;Trusted_Connection=True;";
        services.AddTransient<IStationRepository>(s => new EfStationsRepository(connString));
    }

Поскольку нет конструктора по умолчанию, то миграция не выполняется. Расскажите как выполнить миграцию если конструктор контекста не базовый.

READ ALSO
c# различия между классом и типом?

c# различия между классом и типом?

Правильно ли я понимаю: каждый класс это совокупность типов, а каждый тип это либо класс либо структура?

219
Работа с массивом чисел на c#

Работа с массивом чисел на c#

Я не могу решить 2 задачки по программированию, не понимаю как это сделать

199
Служба с графическим интерфейсом

Служба с графическим интерфейсом

Возможно-ли сделать у службы по таймеру, чтобы каждые 10 секунд показывался MessageBox? Или в службе никак не сделать хоть какие сообщения с графическим...

156
Генерирование версии программы

Генерирование версии программы

Можно ли сделать так, что бы в Caption формы при каждой компиляции программы выполнялся автоматический инкремент версии?

147