需求:我们在服务中注册的实例在Controller可以通过构造函数映射出来,那么如果不是在Controller中我们应该怎么取呢?
// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
//for Add-Migration and services
var connection = "server=127.0.0.1;user=root;pwd=123456;database=CommonUtils.Test.Web;";
//注册
services.AddDbContext<DbDefault>(options => options.UseMySQL(connection));
//获取ServiceProvider
var serviceProvider = services.BuildServiceProvider();
//取出放入静态变量
DbList.Default = serviceProvider.GetService<DbDefault>();
//趁着程序启动做一下数据迁移
DbList.Default.Database.Migrate();
}
感谢下面的文章: