BudgetAnalyser.Engine.Ledger.LedgerBook.LedgersAvailableForTransfer C# (CSharp) Method

LedgersAvailableForTransfer() public method

Lists all the Ledgers available for transfer funds to and from.
public LedgersAvailableForTransfer ( ) : IEnumerable
return IEnumerable
        public IEnumerable<LedgerBucket> LedgersAvailableForTransfer()
        {
            List<LedgerBucket> ledgers = Ledgers.ToList();
            IEnumerable<Account> accounts = Ledgers.Select(l => l.StoredInAccount).Distinct();
            foreach (var account in accounts)
            {
                ledgers.Insert(0, new SurplusLedger { StoredInAccount = account });
            }

            return ledgers;
        }