public override bool TryGetMember(GetMemberBinder binder, out object result) { KeyDataCollection keys = null; if (data != null) { keys = data[binder.Name]; } if (keys == null) { keys = new KeyDataCollection(StringComparer.OrdinalIgnoreCase); } result = new IniSettingKeys(keys); return(true); }
public override bool TryGetIndex(GetIndexBinder binder, object[] indexes, out object result) { KeyDataCollection keys = null; if (indexes.Length > 0) { var key = SafeClrConvert.ToString(indexes[0]); if (data != null) { keys = data[key]; } } if (keys == null) { keys = new KeyDataCollection(StringComparer.OrdinalIgnoreCase); } result = new IniSettingKeys(keys); return(true); }