[.NET] Binding champs de table bdd <=> propriété d'objet

Binding champs de table bdd <=> propriété d'objet [.NET] - C#/.NET managed - Programmation

Marsh Posté le 14-03-2006 à 18:48:12    

Salut,
 
Ha! dure réalité qu'est le monde du travail... Si j'avais le temps de creuser là où je vois des débuts de trous... mais ces saletés d'impératif m'empechent de tester des trucs nouveaux...
bref, ma question:
 
comme si bien résumé dans le titre je souhaite binder certains champs d'une table (voire de plusieurs) avec des propriétés ou des attributs d'une classe, histoire de pas à avoir à chier 50 lignes à chaque fois que je veux faire un nouveau type de requete...
 
2 solutions:

  • la crade, pour creer mon objet, je ponds toutes les propriétés, puis je pond l'affectation des champs aux proprietes suite a un select, puis les proprietes pour remplir la proc stock d'ajout ou de modif etc. etc. etc.
  • la propre, que je connais pas encore, à base de xml peut etre, ou je fais mon binding une fois pour toute.


Si vous pouviez m'orienter vers une solution ... :jap:


---------------
Suri.morkitu.org : Balades au coeur de la ville...
Reply

Marsh Posté le 14-03-2006 à 18:48:12   

Reply

Marsh Posté le 15-03-2006 à 10:10:36    

Reply

Marsh Posté le 16-03-2006 à 21:46:58    

up, y a quoi de bien comme mapping pour .net ?

Reply

Marsh Posté le 22-03-2006 à 09:53:05    

Taz a écrit :

up, y a quoi de bien comme mapping pour .net ?


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 :
  1. Test MonTest = new Test();
  2. MonTest.chp1 = " bla";
  3. MonTest.chp2 = " bla";
  4. 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...
 :hello:  

Reply

Marsh Posté le 22-03-2006 à 11:12:32    

classique

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed