Usuário com melhor resposta
Delete no Detailsview - Como tratar erros?

Pergunta
-
Boa noite pessoal , sou iniciante em ASP.NET e VB.
Estou com um problema na minha aplicação. Tenho um Gridview que exibe os dados do SqlServer, e o detailsview que detalha estas informações e permite ao usuário editar ou deletar estes dados.
A função "editar" está ok, o problema é quando o usuário tenta deletar um dado da tabela porém esta informação já consta em outra tabela como chave estrangeira. Então aparece um erro na tela. Como tratar este erro?
Obrigado desde já.
Respostas
-
Bom dia.
Se esta utilizando WebForm o message box nao ira funcionar, utilize java script, segue link para lhe ajudar:
http://www.macoratti.net/07/09/aspn_ujs.htm
Consultoria .NET
ANALISTA DESENVOLVEDOR
Se esta sugestão for útil, por favor, classifique-a como útil.
Se ela lhe ajudar a resolver o problema, por favor, marque-a como resposta.
Blog .Net Descomplicado- Marcado como Resposta GuilhermeT quinta-feira, 15 de março de 2012 17:11
-
Pessoal, encontrei uma solução:
Private Sub DS_det_municipios_Deleted(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.SqlDataSourceStatusEventArgs) Handles DS_det_municipios.Deleted If IsNothing(e.Exception) Then Else MsgBox("[901] Esse Município está Associado a uma Unidade, Estação ou Bairro ! Verificar Unidade, Estação ou Bairro Associado Antes de Realizar a Exclusão!") e.ExceptionHandled = True End If End Sub
Executou da maneira que eu esperava, porém somente durante o Debug do Visual Studio.
Quando eu rodo minha aplicação no server eu encontro o mesmo problema de antes. Alguma sugestão?
- Marcado como Resposta GuilhermeT quinta-feira, 15 de março de 2012 17:12
Todas as Respostas
-
Segue abaixo a mensagem de erro:
Server Error in '/' Application.
The DELETE statement conflicted with the REFERENCE constraint
"FK_tb_bairro_tb_municipio". The conflict occurred in database "BD_SICAM", table
"dbo.tb_bairro", column 'cod_municipio'.
The statement has been
terminated.
-
Pessoal, encontrei uma solução:
Private Sub DS_det_municipios_Deleted(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.SqlDataSourceStatusEventArgs) Handles DS_det_municipios.Deleted If IsNothing(e.Exception) Then Else MsgBox("[901] Esse Município está Associado a uma Unidade, Estação ou Bairro ! Verificar Unidade, Estação ou Bairro Associado Antes de Realizar a Exclusão!") e.ExceptionHandled = True End If End Sub
Executou da maneira que eu esperava, porém somente durante o Debug do Visual Studio.
Quando eu rodo minha aplicação no server eu encontro o mesmo problema de antes. Alguma sugestão?
- Marcado como Resposta GuilhermeT quinta-feira, 15 de março de 2012 17:12
-
Bom dia.
Se esta utilizando WebForm o message box nao ira funcionar, utilize java script, segue link para lhe ajudar:
http://www.macoratti.net/07/09/aspn_ujs.htm
Consultoria .NET
ANALISTA DESENVOLVEDOR
Se esta sugestão for útil, por favor, classifique-a como útil.
Se ela lhe ajudar a resolver o problema, por favor, marque-a como resposta.
Blog .Net Descomplicado- Marcado como Resposta GuilhermeT quinta-feira, 15 de março de 2012 17:11
-