【发布时间】:2021-04-01 03:01:35
【问题描述】:
我已经设置了一个 ASP.NET Core 项目,并在 Startup.cs 中配置了DbContext,例如 -
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<DBContext>(options =>
options.UseSqlServer(Configuration["ConnectionStrings:DefaultConnection"]));
}
我可以通过依赖注入访问控制器类中的DbContext 对象。但我需要在 Program 类(在 Program.cs 文件中)中引用 DbContext。
我尝试了以下方法,但它表明语法错误-
public class Program
{
public static void Main(string[] args)
{
using (var db = new DBContext()) // getting syntax error here
{
db.Database.EnsureCreated();
}
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>()
.UseUrls("http://localhost:4000");
});
}
那么,如何访问 Program 类中的DbContext 对象呢?
【问题讨论】:
-
我需要找到一种方法来获取 program.cs 中的 dbcontext,就像我们在任何其他控制器中访问相同的一样。
标签: c# asp.net-core entity-framework-core asp.net-core-3.1