public void SaveKonto(KontoVm aKontoVm)
        {
            if (!aKontoVm.Validate().IsValid)
            {
                throw new DataException("Es sind noch Validierungsfehler auf dem KontoVm vorhanden!");
            }

            if (aKontoVm.Row.Status == DtoStatus.Created)
            {
                // To create
                var lKontoId = mDb.Konto.InsertRow(aKontoVm.Row);

                // Reload from Database
                var lRow = mDb.Konto.GetSingleRow(lKontoId, false);

                aKontoVm.Row = lRow;
            }
            else if (aKontoVm.Row.Status == DtoStatus.Updated)
            {
                // To update
                mDb.Konto.UpdateSingleRow(aKontoVm.Row);

                // Reload from Database
                aKontoVm.Row = mDb.Konto.GetSingleRow(aKontoVm.Row.ID, false);
            }
            else if (aKontoVm.Row.Status == DtoStatus.Deleted)
            {
                if (aKontoVm.Id >= 0)
                {
                    throw new DataException("Aktuell wird ein Löschen des Kontos nicht unterstützt.");
                }
            }

            aKontoVm.SaveDependencies();
        }