예제 #1
0
        public static T Read <T>(IAppSettingsIndex settings, T target, string area = null)
        {
            foreach (var prop in typeof(T).GetSettableProperties())
            {
                var key           = string.IsNullOrEmpty(area) ? prop.Name : $"{area}:{prop.Name}";
                var settingString = settings[key];
                if (settingString != null)
                {
                    var setting = ConvertToType(settingString, prop.PropertyType);
                    prop.SetValue(target, setting);
                }
            }

            return(target);
        }
예제 #2
0
 public static T Read <T>(IAppSettingsIndex settings, string area = null)
     where T : new()
 {
     return(Read(settings, new T(), area));
 }