public T Read <T>(ColumnDefinition <T> column) { int columnIndex = this.columnsInOrder.IndexOf(column); if (columnIndex == -1) { // TODO Notify about missing column? return(default(T)); } else { return(column.Deserialize(this.columnStrings[columnIndex])); } }