作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
asp.net mvc 6 beta5
我尝试使用 config.json 来激活\禁用日志记录
public IConfiguration Configuration { get; set; }
public Startup(IHostingEnvironment env, IApplicationEnvironment appEnv)
{
var configurationBuilder = new ConfigurationBuilder(appEnv.ApplicationBasePath)
.AddJsonFile("config.json")
.AddEnvironmentVariables();
Configuration = configurationBuilder.Build();
DBContext.ConnectionString = Configuration.Get("Data:DefaultConnection:ConnectionString");
}
public void ConfigureServices(IServiceCollection services)
{
services.AddOptions();
services.Configure<AppSettings>(Configuration.GetConfigurationSection("AppSettings"));
}
// Configure is called after ConfigureServices is called.
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerfactory)
{
// that line cause NullReferenceException
AppSettings settings = ConfigurationBinder.Bind<AppSettings>(Configuration);
if (settings.Log.IsActive)
{
................
}
示例来自 ASP.NET 5 (vNext) - Getting a Configuration Setting和 http://perezgb.com/2015/07/04/aspnet-5-typed-settings-with-the-configurationbinder/
还有另一种方法可以在“配置”方法中获取 AppSettings 的实例吗?我需要键入的对象。
最佳答案
在 ConfigureServices
中配置的每个服务都可以由运行时注入(inject)到 Configure
方法中:
public void Configure(IApplicationBuilder app, IOptions<AppSettings> options)
{
// access options.Options here
}
与直接访问 ServiceProvider
相比,这是一种更简洁的解决方案。
关于c# - startup.cs的Configure方法中如何使用ConfigurationBinder,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31541944/
我是一名优秀的程序员,十分优秀!