public Debt MapFromDALDebt(HouseholdDebtTracker.DAL.Models.Debt debt)
 {
     if (debt == null)
     {
         return(null);
     }
     // set nested debts to null so we dont cycle in mapping whole "tree"
     if (debt.Debtor != null)
     {
         debt.Debtor.Debts   = null;
         debt.Debtor.Credits = null;
     }
     if (debt.Creditor != null)
     {
         debt.Creditor.Debts   = null;
         debt.Creditor.Credits = null;
     }
     return(new Debt(debt.ID, debt.Date, MapFromDALDebtType(debt.Type),
                     MapFromDALPerson(debt.Debtor), MapFromDALPerson(debt.Creditor), debt.Amount));
 }
        public HouseholdDebtTracker.DAL.Models.Debt MapToDALDebt(Debt debt)
        {
            if (debt == null)
            {
                return(null);
            }
            var mappedDebt = new HouseholdDebtTracker.DAL.Models.Debt();

            mappedDebt.ID     = debt.ID.GetValueOrDefault();
            mappedDebt.Date   = debt.Date.GetValueOrDefault();
            mappedDebt.Type   = MapToDALDebtType(debt.Type.GetValueOrDefault());
            mappedDebt.Amount = debt.Amount;
            if (debt.Debtor != null)
            {
                mappedDebt.DebtorId = debt.Debtor.ID.GetValueOrDefault();
                mappedDebt.Debtor   = MapToDALPerson(debt.Debtor);
            }
            if (debt.Creditor != null)
            {
                mappedDebt.CreditorId = debt.Creditor.ID.GetValueOrDefault();
                mappedDebt.Creditor   = MapToDALPerson(debt.Creditor);
            }
            return(mappedDebt);
        }