Salut

J'ai pas trouvé le moyen de stopper l'enregistrement dans le base à partir d'un DetailView.
J'ai bien vu que ça devait passer par le ItemInserting, amis quoi metrte dedans.
J'ai fais un essai qui me parrassait logique, mais ça fait rien. Dans mon code vous verrez un label qui s'afiche bien, mais le Exit Sub aprés n'a visiblement aucun effet car je retrouve mes données dans la base.

C'est un truc pour ne pas avoir de doublon, mais pas au sens database du terme. Ce sont des doublons fonctionnels.

Voici mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
	Protected Sub dvAjoutCat_ItemInserting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DetailsViewInsertEventArgs) Handles dvAjoutCat.ItemInserting
		Dim toto As Int16
		Dim dt As System.Data.DataTable
		Dim nom, parent, sql As String
		nom = CType(dvAjoutCat.Controls.Item(0).Controls(1).Controls.Item(1).Controls.Item(0), TextBox).Text
		parent = CType(dvAjoutCat.Controls.Item(0).Controls(2).Controls.Item(1).Controls.Item(0), TextBox).Text
		sql = "SELECT COUNT(*) FROM Categ_Annonce WHERE Nom_Categ = '" & nom & "' AND Categ_Parent = '" & parent & "'"
 
		dt = dm.ExecuterRequeteSimple(sql)
		toto = dt.Rows(0).Item(0)
		If toto <> 0 Then
			lblTest.Text = "Déjà existant"
			Exit Sub
 
		End If
	End Sub
Pouvez vous m'aider ?