Forum Clubic

VB Net - Gestion des Erreur avec Try Catch

Je vien de commencer coder une application en VB .NET et la gestion des erreur n’est plus commme dans VB6. On ne sais plus le code d’erreur comme dans VB6.
J’ai créé un fonction qui recherche un client dans une db et celle ci me retourne un Objet TABLE dans le quelle je retrouve l’ensemble de mes données. Mais si aucune donnée n’est trouvé, l’objet est Empty et là, Erreur. En VB6 Je retournais un recordset et si celui ci etait vide bien j’affichait un message disant que le client n’existait pas dans la DB mais en VB .NET c’est vraiment pas la même chose. En VB6 je pouvais savoir aussi le code d’Erreur et retourné le message appropriée a l’ usager ou bien executer un autre procedure.

Pourquoi ne pas tester si ton objet retourné est null???


dim r as recordset=mafonction()
if r is Nothing Then
'Gestion d'erreurs...
return
end if

Les RecordSet son disponible en VB .NET ?

ah non ça a été enlevé, il existent les dataset & datatable sinon

Comment est-il possible de réagir sur un Obj DataTable Empty.
If DataTable is Empty then …
Mais ça ne fonctionne pas. Comment faire ???

If datatable is Nothing '-> permet de voir si la datatable est allouée

If datatable.rows.count=0 Then '-> permet de voir si la datatable contient quelquechose

sinon :


OleDbDataReader r = new OleDbCommand("select * from toto where id=1", connection).ExecuteReader();
if (r.Read())
{
int id = (int)r["id"];
... 
}
r.Close();

ou :


OleDbDataReader r = new OleDbCommand("select * from toto", connection).ExecuteReader();
while(r.Read())
{
... 
}
r.Close();

Merci, vous êtes très simpat. J’ai poursuivis mon implémentation hier soir et je peu dir que c’est du sport comparativement a VB 6. Tout est différent en VB NET. J’avais des problêmes avec une serie de donnée qui me revenait toujour, je ne comprenais pas du tout ce qui se passait, la requete devait me retourner un autre jeux de donnée. J’ai fini par comprendre qu’il falai que je vide mon DataTable avant de le remplire avec d’autres donnée. J’utilise cette exemple pour ma manipulation de donnee Exemple manipulation data VB NET
Exist-il une façon d’obtenire des codes d’herreur comme en VB 6 Err.number ?