using CsvHelper.Configuration; namespace MoneyMap.Models.Import; public sealed class TransactionCsvRowMap : ClassMap { public TransactionCsvRowMap(bool hasCategory) { Map(m => m.Date).Name("Date"); Map(m => m.Transaction).Name("Transaction"); Map(m => m.Name).Name("Name"); Map(m => m.Memo).Name("Memo"); Map(m => m.Amount).Name("Amount"); if (hasCategory) { Map(m => m.Category).Name("Category"); } else { if (hasCategory) { Map(m => m.Category).Name("Category"); } else { Map(m => m.Category).Constant(string.Empty).Optional(); } } } }