protected override T CreateObject <T>(Table table, Row row) { DynaType dynaType = typeConverter.GetDynaType(table); DynaRow <T> bean = dynaType.NewInstance <T>(); SetProperties(table, row, table.Columns, bean); return(bean.Instance); }
private DataRow CreateDataRow(DataTable dataTable, Table table, Row row, DynaType dynaType) { DataRow dataRow = dataTable.NewRow(); foreach (DataColumn column in dataTable.Columns) { string columnName = column.ColumnName; if (!ForSearchKey || searchKeyMap[columnName]) { string textValue = GetValue(row, columnName); dataRow[column] = ToObject(dynaType[columnName], textValue, table, row); } } return(dataRow); }
protected virtual DataTable GetDataTable(string typeName) { Table table = GetTable(Section, typeof(DataTable), typeName); DataTable dataTable = CreateDataTable(table); DynaType dynaType = typeConverter.GetDynaType(table); List <Row> rows = table.Rows; foreach (Row row in rows) { DataRow dataRow = CreateDataRow(dataTable, table, row, dynaType); dataTable.Rows.Add(dataRow); } return(dataTable); }
public DynaRow(DynaType dynaType) { DynaType = dynaType; Instance = Activator.CreateInstance <T>(); }