public static IWebHostBuilder UseSharedAppSettings(this IWebHostBuilder builder, string environmentName, FileInfo sharedAppSettingsFileInfo)
 {
     builder.UseEnvironment(environmentName ?? EnvironmentName.Development);
     if (environmentName != EnvironmentName.Production)
     {
         builder.CaptureStartupErrors(true);
         builder.UseSetting("detailedErrors", "true");
     }
     builder.PrependSharedAppSettings(sharedAppSettingsFileInfo);
     return(builder);
 }
 public static IWebHostBuilder PrependSharedAppSettingsFromParentDirectory(this IWebHostBuilder builder, string sharedFileName)
 {
     if (builder == null || string.IsNullOrEmpty(sharedFileName))
     {
         return(builder);
     }
     // modify the config files being used
     builder.ConfigureAppConfiguration((hostingContext, config) => {
         var parentDir  = Directory.GetParent(hostingContext.HostingEnvironment.ContentRootPath);
         var sharedFile = new FileInfo(Path.Combine(parentDir.FullName, sharedFileName));
         builder.PrependSharedAppSettings(sharedFile);
     });
     return(builder);
 }