3
respostas

Erro de conexão

Olá;

Quando aperto F5 o Visual Studio retorna a seguinte mensagem: "An exception of type 'System.Data.Entity.Core.EntityException' occurred in EntityFramework.SqlServer.dll but was not handled in user code"

Como resolver ?

3 respostas

Oi Leticia, tudo bom?

Você pode compartilhar com a gente parte do seu código que gerou o problema? Normalmente o visual studio te aponta para a origem.

Assim fica mais facil te ajudar =)

Caso você sinta necessidade, também pode dar uma verificada no projeto pronto desse capitulo: https://cursos.alura.com.br/course/desenvolvimento-web-asp-net-mvc-5/task/18980

As vezes é um detalhezinho que a gente deixa passar.

Abraço!

Tive o mesmo problema, baixei o código final porem mesmo erro.

Para ajudar a identificar o problema, pode ser utilizado o link de informações adicionais que aparece na tela de erro.

Uma outra forma seria tratar este tipo de exceção. (try/catch) Aqui tem um exemplo onde eu imprimo o erro na tela (Controller de produtos, método Index).

  public ActionResult Index()
        {
            try
            {
                ProdutosDAO dao = new ProdutosDAO();
                IList<Produto> produtos = dao.Lista();
                ViewBag.Produtos = produtos;
                return View();
            }
            catch (Exception ex)
            {
                if (!(ex is System.Data.Entity.Core.EntityException || ex is System.Data.Entity.Infrastructure.DbUpdateException || ex is System.Data.SqlClient.SqlException)) 
                    throw;



                HttpContext.Response.Write("Erro ao acessar banco de dados - Tipo do erro :" + ex.GetType().ToString() + "<br>");

                HttpContext.Response.Write("Erro ao acessar banco de dados - Mensagem :" + ex.Message.ToString() + "<br>");
                HttpContext.Response.Write("Erro ao acessar banco de dados - Informações adicionais :" + ex.InnerException.ToString() + "<br>");
                return null;
            }
        }