Я использую Asp.Net MVC 6 beta4 с шаблоном репозитория.
В моем Startup.cs у меня есть что-то вроде этого:
services.AddEntityFramework()
.AddSqlServer()
.AddDbContext<ApplicationDbContext>(options =>
options.UseSqlServer(Configuration["Data:DefaultConnection:ConnectionString"]));
//Dependency Injection
services.AddTransient<IProductRepository, ProductRepository>();
В моем контроллере я могу получить свой экземпляр ApplicationDbContext с помощью:
[FromServices]
public ApplicationDbContext DbContext { get; set; }
Но я не могу получить экземпляр ApplicationDbContext в своей реализации репозитория с помощью этого кода сегмента, приведенного выше.
С MVC 5 я использовал ServiceLocator в своем репозитории и взял ApplicationDbContext так:
var context = ServiceLocator.Current.GetInstance<ApplicationDbContext>()
Как получить экземпляр ApplicationDbContext в моем репозитории с помощью Asp.NET MVC 6?