public async Task <IActionResult> GetIncomeAndExpensesAccountById(Int64 IncomeAndExpensesAccountId)
        {
            IncomeAndExpensesAccount Items = new IncomeAndExpensesAccount();

            try
            {
                Items = await _context.IncomeAndExpensesAccount.Where(q => q.IncomeAndExpensesAccountId == IncomeAndExpensesAccountId).FirstOrDefaultAsync();
            }
            catch (Exception ex)
            {
                _logger.LogError($"Ocurrio un error: { ex.ToString() }");
                return(BadRequest($"Ocurrio un error:{ex.Message}"));
            }


            return(await Task.Run(() => Ok(Items)));
        }
        public async Task <ActionResult <IncomeAndExpensesAccount> > Insert([FromBody] IncomeAndExpensesAccount _IncomeAndExpensesAccount)
        {
            IncomeAndExpensesAccount _IncomeAndExpensesAccountq = new IncomeAndExpensesAccount();

            try
            {
                _IncomeAndExpensesAccountq = _IncomeAndExpensesAccount;
                _context.IncomeAndExpensesAccount.Add(_IncomeAndExpensesAccountq);
                await _context.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                _logger.LogError($"Ocurrio un error: { ex.ToString() }");
                return(BadRequest($"Ocurrio un error:{ex.Message}"));
            }

            return(await Task.Run(() => Ok(_IncomeAndExpensesAccountq)));
        }
        public async Task <IActionResult> Delete([FromBody] IncomeAndExpensesAccount _IncomeAndExpensesAccount)
        {
            IncomeAndExpensesAccount _IncomeAndExpensesAccountq = new IncomeAndExpensesAccount();

            try
            {
                _IncomeAndExpensesAccountq = _context.IncomeAndExpensesAccount
                                             .Where(x => x.IncomeAndExpensesAccountId == (Int64)_IncomeAndExpensesAccount.IncomeAndExpensesAccountId)
                                             .FirstOrDefault();

                _context.IncomeAndExpensesAccount.Remove(_IncomeAndExpensesAccountq);
                await _context.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                _logger.LogError($"Ocurrio un error: { ex.ToString() }");
                return(await Task.Run(() => BadRequest($"Ocurrio un error:{ex.Message}")));
            }

            return(await Task.Run(() => Ok(_IncomeAndExpensesAccountq)));
        }
        public async Task <ActionResult <IncomeAndExpensesAccount> > Update([FromBody] IncomeAndExpensesAccount _IncomeAndExpensesAccount)
        {
            IncomeAndExpensesAccount _IncomeAndExpensesAccountq = _IncomeAndExpensesAccount;

            try
            {
                _IncomeAndExpensesAccountq = await(from c in _context.IncomeAndExpensesAccount
                                                   .Where(q => q.IncomeAndExpensesAccountId == _IncomeAndExpensesAccount.IncomeAndExpensesAccountId)
                                                   select c
                                                   ).FirstOrDefaultAsync();

                _context.Entry(_IncomeAndExpensesAccountq).CurrentValues.SetValues((_IncomeAndExpensesAccount));

                //_context.IncomeAndExpensesAccount.Update(_IncomeAndExpensesAccountq);
                await _context.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                _logger.LogError($"Ocurrio un error: { ex.ToString() }");
                return(await Task.Run(() => BadRequest($"Ocurrio un error:{ex.Message}")));
            }

            return(await Task.Run(() => Ok(_IncomeAndExpensesAccountq)));
        }