public HouseholdBook CreateHouseholdBook() { var transactions = _transactionProvider.ProvideTransactions(); var householdBook = new HouseholdBook(); foreach (Banktransaction transaction in transactions.ToList()) { var category = _transactionCategorizer.DetermineCategory(transaction.Description); var householdPost = householdBook.RetrieveHouseholdPost(category); householdPost.AddTransaction(transaction.Description, transaction.Amount, YearMonth.FromDateTime(transaction.Date), transaction.TransactionDirection); transactions.Remove(transaction); } return(householdBook); }