Quel est le nom de l'exception pour "doublon dans un index"
Quel est le nom de l'exception pour "doublon dans un index"
Tout depend quel(le) type/méthode celà concerne, pour l'ajout d'un objet dans un HashTable par exemple se sera un ArgumentException ... Donnes nous la ligne de code concernée, tu n'es peut être pas dans le bon sous-forum![]()
Un doublon dans un index lorsque je veux ajouter un enregistrement dans un table MS Access (base de données). Le champ en question est indexé (Oui, sans doublons). Alors, lorsque l'on essaie d'enregistrer un enregistrement dans ce champ (même valeur qu'un autre champ), il génère une erreur comme "Doublon dans un index......". J'aimerais récupérer cette erreur pour avertir l'utilisateur pour qu'il puisse corriger et enregistrer à nouveau.
remplacer "Exception" par le mot qui récupérerait cette exception ou le code si possible.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 [Try] traitement..... [Catch objException As Exception]
Eh bien cher ami, tu es sur la bonne piste fait l'essai avec ce bloc try/catch en provoquant l'erreur souhaité et affiche objException.ToString()
le message te dira de quelle exception typée il s'agit; sinon en mode debug tu peux suivre dans objException les InnerExceptions qu'il détient
![]()
L'exception qu'il me donne est :
"System.Data.OleDb.OleDbException"
C'est bien vaste comme exception! Cela peut-être plusieurs erreurs provenant des tables de MS Access. Qu'est ce qui me dit que c'est bien "Doublon dans un index...". Il faut que je sois vraiment très précis!
Pour ce qui est de "InnerException", j'essaie de m,en servir en mode "Debug" et cela ne fonctionne pas, il ferme mon formulaire tout simplement et aucun message n,apparaît à l'écran...bizarre!!!
Ex.: Catch objException As Exception
MessageBox.Show(objException.InnerException.Message)
MessageBox.Show(objException.InnerException.ToString)
et rien ne fonctionne...
merci de votre aide!
Attention il te faut mettre une conditionnelle qui s'assure de la présence d'une InnerException, maintenant pour ce qui est de la spécificité il te faudrait peut miser sur une recupération d'un HResult pour faitre une identification plus précise, à moins que la simplecomparaison de la chaine de caractères du message soit suffisante![]()
Partager