/// <summary> /// This is called for each new result set (in a multi-resultset query). /// </summary> private void ParseResultSet() { ColumnNameMap = _dr.GetColumnNameMap(); ColumnIndexMap = _dr.GetColumnIndexMap(); if (this.CurrentOutputType != null) { this.HasChildCollectionMembers = ModelCache.HasChildCollectionMembers(this.CurrentOutputType); this.HasReferencedObjectMembers = ModelCache.HasReferencedObjectMembers(this.CurrentOutputType); ColumnMemberLookup = ModelCache.GetColumnMemberStandardizedLookup(CurrentOutputType); ColumnMemberIndexMap = new List <ColumnMember>(); foreach (var name in ColumnIndexMap) { ColumnMember member = null; if (ColumnMemberLookup.TryGetValue(name, out member)) { ColumnMemberIndexMap.Add(member); } } if (!HasReferencedObjectMembers) { _setInstanceValuesFn = ModelCache.GetSetInstanceValuesDelegate(this); } } }
public static ColumnMember ColumnMemberForPropertyName(Type type, String propertyName) { return(ModelCache.GetColumnMemberStandardizedLookup(type)[Model.StandardizeCasing(propertyName)]); }