1
resposta

Erro usando Métodos Assíncronos para salvar produtos e categorias

Estou tento um erro de conexão ao usar os métodos assincronos no c#. Eu consigo salvar uma Categoria com o comando

novaCategoria = _dbSet.Add(novaCategoria).Entity;
                await _context.SaveChangesAsync();      

Mas quando tento adicionar o produto com a categoria já salva, retorna um erro de "There is already an open DataReader associated with this Command which must be closed first"

Esse é o código em que eu salva o produto

public async Task SaveLivros(List<Livro> livros)
        {
            foreach (var livro in livros)
            {
                bool produtoJaSalvo = _dbSet.Where(p => p.Codigo == livro.Codigo).Any();

                if (!produtoJaSalvo)
                {
                    Categoria categoria = await _categoriaRepository.SaveCategoria(livro.Categoria);

                    _dbSet.Add(new Produto(livro.Codigo, livro.Nome, livro.Preco, categoria));
                }
            }
            await _context.SaveChangesAsync();
        }

O link para o projeto do curso é : https://github.com/bufaonanet/CasaDoCodigo

1 resposta

Tanto tempo sem uma resposta. estou decepcionado com a Alura. Com certeza não irei renovar com a plataforma