public async Task <RicevutaViewModel> GetRicevutaAsync(int id)
        {
            logger.LogInformation("Ricevuto {id}", id);
            var queryLinq = dbContext.Ricevute
                            .AsNoTracking()
                            .Where(ricevuta => ricevuta.Id == id)
                            .Select(ricevuta => RicevutaViewModel.FromEntity(ricevuta));
            RicevutaViewModel viewModel = await queryLinq.FirstOrDefaultAsync();

            if (viewModel == null)
            {
                logger.LogWarning("Ricevuta {id} not found", id);
                throw new RicevutaNotFoundException(id);
            }
            return(viewModel);
        }
        public List <RicevutaViewModel> GetRicevute(int id)
        {
            logger.LogInformation("Ricevuto {id}", id);
            var queryLinq = dbContext.Ricevute
                            .AsNoTracking()
                            .Where(ricevuta => ricevuta.IDScadenza == id);
            List <RicevutaViewModel> viewModel = new();

            foreach (var item in queryLinq)
            {
                RicevutaViewModel view = RicevutaViewModel.FromEntity(item);
                viewModel.Add(view);
            }
            if (viewModel == null)
            {
                throw new RicevutaNotFoundException(id);
            }
            return(viewModel);
        }