/// <summary>
        /// this method did not remove all budgetItems anymore and update the budget
        /// </summary>
        /// <param name="original_entity"></param>
        /// <param name="entity"></param>
        private void UpdateBudget(Budget original_entity, Budget entity, List<BudgetItem> budgetItems)
        {
            original_entity.CopyPropertiesFrom(entity);
            original_entity.ModifiedDate = DateTime.Now;
            DbContext.SubmitChanges();

            //
            //  Update budgetItems
            // 
            foreach (var budgetItem in original_entity.BudgetItems.ToArray())
                DeleteBudgetItem(budgetItem);

            foreach (var item in budgetItems)
            {
                item.BudgetId = original_entity.BudgetId;
                InsertBudgetItem(item.Detach());
            }

            DbContext.SubmitChanges();
        }