Salut à tous,
Y a-t-il un spécialiste ADO.NET dans la salle ? J'ai une base de donnée sous MSDE, et j'ai créé une table grâce au Visual Database Tools de Visual Studion 2003. A la création de la table, j'ai ajouté une "contrainte CHECK" pour qu'un champ nommé Ref soit obligatoirement composé de 3 caractères alphabétiques :
J'ai une application WinForm, qui charge un dataset typé correspondant pour éditer la table via un DataGrid. Quand j'ajoute/modifie une ligne via l'application, si le champ Ref ne fait pas exactement 3 caractères, j'ai une exception au moment de l'Update. Jusque là, c'est normal.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ([Ref] like '[A-Z][A-Z][A-Z]')
Mon problème est le suivant : je voudrais pouvoir détecter la violation de contrainte avant l'appel à Update. Je veux que ce soit l'application qui vérifie cela préalablement (pour éviter des connexions inutiles avec la source de données).
Mais je ne veux pas coder manuellement la vérification de la contrainte, car je voudrais ajouter d'autres contraintes, et j'aimerais une validation générique dans mes formulaires d'édition. Existe-t-il un moyen de récupérer la contrainte depuis la source de données ?
Je pensais pouvoir trouver quelque chose dans DataTable.Constraints, mais ça ne parle que de ForeignKeyConstraint ou UniqueConstraint, et ça ne semble pas correspondre à ce que je recherche pour mon type de contrainte...
Merci de m'éclairer
Partager