public static void MapFlatArray(this LightDBDefinitionSet defs, IDataField dataField, IDataFieldDefinition fieldDef, Dictionary <string, List <SimpleDataColumn> > mappedFields) { FlatArrayFieldDefinition arrayFieldDefinition = (FlatArrayFieldDefinition)fieldDef; FlatArrayDataField flatArrayDataField = (FlatArrayDataField)dataField; TableDefinition[] defaultTables = defs.EnsureTables(arrayFieldDefinition.Table, dataField.DataHolderDefinition); SimpleFlatFieldDefinition[] columns = arrayFieldDefinition.GetColumns(flatArrayDataField.Length); IDataFieldAccessor[] arrayAccessors = flatArrayDataField.ArrayAccessors; for (int index = 0; index < columns.Length; ++index) { SimpleFlatFieldDefinition fieldDef1 = columns[index]; LightDBMgr.AddMapping(defs, defaultTables, fieldDef1, mappedFields, (IFlatDataFieldAccessor)arrayAccessors[index], dataField.MappedMember); } }
public FlatArrayAccessor(FlatArrayDataField arrayField, int index) { this.m_ArrayField = arrayField; this.m_Index = index; }