我想從配置文件中添加最小日誌級別和滾動文件路徑等SeriLog設置。該標準是他們難以像這樣的代碼:如何訪問.NET啓動類構造函數中的AppSettings核心
public Startup(IHostingEnvironment env)
{
var builder = new ConfigurationBuilder()
.SetBasePath(env.ContentRootPath)
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
.AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true)
.AddEnvironmentVariables();
Configuration = builder.Build();
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug()
.WriteTo.RollingFile("C:/LogFiles/log-{Date}.txt")
.CreateLogger();
}
基本上,我需要能夠從appsettings.json訪問啓動構造函數值。事情是這樣的:
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Is((LogEventLevel)Enum.Parse(typeof(LogEventLevel),
Configuration.GetValue<string>("AppSettings.MinimumLoggingLevel")))
.WriteTo.RollingFile(Configuration.GetValue<string>("AppSettings.RollingFilePath"))
我發現Configuration.GetValue
語法在另一個SO發佈,但它總是返回null
。
什麼是您的appsettings.json樣子? –