public void Add_unreconciled_rows_to_csv_file <TRecordType>(string sheet_name, ICSVFile <TRecordType> csv_file) where TRecordType : ICSVRecord, new() { int divider_row_number = Find_row_number_of_last_divider_row(sheet_name); int last_row_number = _spreadsheet_io.Last_row_number(sheet_name); for (int row_number = divider_row_number + 1; row_number <= last_row_number; row_number++) { var csv_record = new TRecordType(); csv_record.Read_from_spreadsheet_row(_spreadsheet_io.Read_specified_row(sheet_name, row_number)); csv_file.Records.Add(csv_record); } csv_file.Records = csv_file.Records.OrderBy(record => record.Date).ToList(); }