Exemple #1
0
 /// <summary>
 /// Create custom option class by ConfigurationBuilder().
 /// </summary>
 /// <param name="type"></param>
 /// <param name="cbOptionsAttribute"></param>
 /// <returns></returns>
 public static object Create(Type type, CbOptionsAttribute cbOptionsAttribute)
 {
     return(ConfigurationCache.GetOrAdd(
                cbOptionsAttribute,
                attribute => new ConfigurationBuilder()
                .SetBasePath(Environment.CurrentDirectory)
                .AddJsonFile(
                    path: cbOptionsAttribute.SettingJsonPath,
                    optional: cbOptionsAttribute.Optional,
                    reloadOnChange: cbOptionsAttribute.ReloadOnChange)
                .AddEnvironmentVariables()
                .Build())
            .GetSection(cbOptionsAttribute.SectionKey).Get(type));
 }
Exemple #2
0
 /// <summary>
 /// Create custom option class by ConfigurationBuilder().
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="cbOptionsAttribute"></param>
 /// <returns></returns>
 public static T Create <T>(CbOptionsAttribute cbOptionsAttribute)
 {
     return((T)Create(typeof(T), cbOptionsAttribute));
 }