J'ai testé myGeneration qui est pas mal (http://www.mygenerationsoftware.com/portal/default.aspx)
L'idée : myGeneration te genere un mini framework et une dal (Data Access Layer) pour une base de données.
Il va generer les proc stock CRUD (create / read / update / delete) , et ensuite generer une classe abstraite par table de ta base qui va exploiter les proc stock, plus des methodes du genre getById, ou GetAll.
L'avantage est que dans tes classes abstraites, il aura défini des propriétés qui sont les champs de ta table. Ce qui te permet de manipuler tes classes, faire des requetes parametrées sans avoir a manipuler du sql derriere.
L'inconvenient est qu'il y a une classe par table. Dans le cas de jointure, il faut faire une vue au niveau BDD, et faire la generation a partir de la vue (comme pour la table). C'est une autre facon de penser mais qui marche bien aussi.
ex : tu as une table test, avec des colonnes id, chp1, chp2
MyGeneration va te generer les proc stockée CRUD
Une classe abstraite _test (DAL)
tu feras une classe test:_test, et tu travailleras avec la classe test
ce qui donnera a la louche, je me souviens à peu pres de la synthaxe :
Code :
- Test MonTest = new Test();
- MonTest.chp1 = " bla";
- MonTest.chp2 = " bla";
- MonTest.Create();
|
Voila en gros l'idée... l'avantage est que si tu changes la structure de tes tables, tu regeneres l'ensemble, et tres peu de modif de haut niveau.
N'hesitez pas si je ne suis pas clair...