9
respostas

Erro ao executar aplicação

Estou tendo o erro abaixo ao tentar acessar o banco:

SqlException: An attempt to attach an auto-named database for file C:\Users\silvi\Documents\Alura\desenvolvimento-web-asp-net-mvc-5-aula3\CaelumEstoque-aula3\CaelumEstoque\App_Data\DBEstoque.mdf failed. A database with the same name exists, or specified file cannot be opened, or it is located on UNC share.

Já atualizei o banco e alterei a connection string, porém o erro persiste.

9 respostas

Olá Silvio,

Adicione este parâmetro na sua string de conexão e veja se funciona:

User Instance=True

Vou tentar, obrigado.

Agora o erro foi: System.ArgumentException: 'Valor inválido para chave 'integrated security'.'

Minha connection string ficou assim:

<add name="EstoqueContext" connectionString="Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|DBEstoque.mdf;Integrated Security=True User Instance=True" providerName="System.Data.SqlClient" />

Oá Silvio,

faltou o ponto e vírgula no fim do Integrated Sercurity e no User Instance para marcar a quebra do comando. Olhe como é no Data Source :

Data Source=(LocalDB)\MSSQLLocalDB;

Entendi, qual o curso da alura para entender melhor essa parte de conexão com o banco?

Não temos um curso específico apenas sobre conexão com banco. Um curso que a gente comenta um pouco mais a fundo sobre essa parte de trabalhar com bancos de dados no .net é no curso de Entity Framework.

Acho que está evoluindo, pois agora o erro é diferente:

Erro de Servidor no Aplicativo '/'.

The user instance login flag is not allowed when connecting to a user instance of SQL Server. The connection will be closed.

Descrição: Ocorreu uma exceção sem tratamento durante a execução da atual solicitação da Web. Examine o rastreamento de pilha para obter mais informações sobre o erro e onde foi originado no código.

Detalhes da Exceção: System.Data.SqlClient.SqlException: The user instance login flag is not allowed when connecting to a user instance of SQL Server. The connection will be closed.

Erro de Origem:

Linha 22: using (var contexto = new EstoqueContext()) Linha 23: { Linha 24: return contexto.Produtos.Include("Categoria").ToList(); Linha 25: } Linha 26: }

Olá Silvio,

Tente trocar o valor da propriedade Data Source de

Data Source=(LocalDB)\MSSQLLocalDB;

para

Data Source=.\SQLEXPRESS;