[英]How to get environment variable in OnModelCreating()?
我在 DbContext 的 OnModelCreating() 中调用一个方法。 我不希望在每个环境中都调用它。
试图像这样实现它。 DbContext 实现中的 OnModelCreating()。
var env = this.GetService<IWebHostEnvironment>();
if (env.EnvironmentName == "Development")
{
modelBuilder.SeedData();
}
在 Program.cs 中
services
.AddDbContext<TDbContext>((serviceProvider, options) => options.UseSqlServer(configuration.GetConnectionString(connectionStringName))
.UseInternalServiceProvider()
.AddInterceptors(serviceProvider.GetRequiredService<SOMESERVICE>()));
UseInternalServiceProvider() 无法识别,我收到编译时错误。 我正在使用 .net 6 也许,我链接的问题使用了旧版本。
更新:试过
Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT")
但它返回 null
在.net core 6 我是这样用的,app是app=builder.build(); 在 Program.cs 中
如果(app.Environment.IsDevelopment()){
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.