public async Task <Order> UpdateOrderAsync(Order order)
        {
            if (!_context.Orders.Local.Any(o => o.Id == order.Id))
            {
                _context.Orders.Attach(order);
            }
            _context.Entry(order).State = EntityState.Modified;
            await _context.SaveChangesAsync();

            return(order);
        }
        public async Task <Customer> UpdateCustomerAsync(Customer customer)
        {
            if (!context.Customers.Local.Any(cust => cust.Id == customer.Id))
            {
                context.Customers.Attach(customer);
            }
            context.Entry(customer).State = EntityState.Modified;
            await context.SaveChangesAsync();

            return(customer);
        }
        public async Task <PrincipalPart> UpdatePrincipalPartAsync(PrincipalPart principalPart)
        {
            if (!_context.PrincipalParts.Local.Any(c => c.Id == principalPart.Id))
            {
                _context.PrincipalParts.Attach(principalPart);
            }
            _context.Entry(principalPart).State = EntityState.Modified;
            await _context.SaveChangesAsync();

            return(principalPart);
        }
        public async Task <Customer> UpdateCustomerAsync(Customer customer)
        {
            if (_context.Customers.Local.All(c => c.Id != customer.Id))
            {
                _context.Customers.Attach(customer);
            }

            _context.Entry(customer).State = EntityState.Modified;
            await _context.SaveChangesAsync();

            return(customer);
        }