public static IConfigurationCollection <T> AsConfiguration <T>(this ConfigurationProfileModel model)
            where T : class, IConfigurationCollection <T>
        {
            var values          = model.Values.Select(v => (v.SectionKey, v.OptionKey, (v.Value, v.Guid)));
            var valueCollection = ConfigurationValueCollection.MakeExistingValueCollection <T>
                                      (values, model.ValueCollectionGuid);

            return(new ConfigurationCollection <T>(valueCollection));
        }
Exemple #2
0
        public static IConfigurationSection <T> AsConfigurationSection <T>(this ConfigurationProfileModel model)
            where T : class
        {
            var sectionKey      = model.Values.First().SectionKey;
            var values          = model.Values.Select(v => (v.OptionKey, (v.Value, v.Guid, v.ValueType)));
            var valueCollection = ConfigurationValueCollection.MakeExistingValueCollection <T>
                                      (values, sectionKey, model.ValueCollectionGuid);

            return(new ConfigurationSection <T>(valueCollection, sectionKey));
        }