08. oktober 2010 - 21:43Der er
19 kommentarer og 1 løsning
Nhybernate begynder spørgsmål - Autogenerering af hbm.xml mapping filer ud fra et objekt
Hejsa.
Har en stor eksisterende kodebase med 30 forskellige klasser. Jeg laver idag kommunikationen mellem SQL DB og klassen manuelt.
Altså, updates, deletes, insert, select osv.
Det fungerer fint, men det indebærer selvfølgelig en del kode, når man skal sætte > 20 properties for en klasse, ud fra en database record. Og det for over 30 klasser (antallet er stadig voksende).
Derfor vil jeg gerne igang med at bruge Nhybernate. Eller i hvert fald se hvad det er for en størrelse og om det kan hjælpe mig.
Jeg er 100% på begynder niveau mht nhybernate og er igang med den indledende introduktion.
Jeg kan se at et essentielt værktøj i Nhybernate er .hbm.xml mapping files.
Mit spørgsmål er så om der findes et værktøj (Gratis eller commercielt) som kan hjælpe mig med at generere disse mapping filer. Ville være meget ked af at skulle skrive dem i hånden.
Jeg kan google mig til nogle som kan gøre det ud fra en database struktur. Men det er jeg ikke interesseret i. Jeg vil gerne kunne generere dem ud fra mine eksisterende klasser.
"We're sorry, but an error has occurred. We have been notified about the error.
Most likely this was an intermittent issue. Please try your task again. If you continue to experience issues or would like to send us more information regarding this error, please contact us here. "
Som sagt hvis du vil have det så nemt som muligt så brug Fluent NHibernate.
NHibernate's styker ligger ikke bare i separationen men også i en lang række andre features: - database uafhængig kode - nem brug af auto increment (identity) - support for lazy loading - support for flere forskellige mapninger af arv mellem klasser - indbygget cache - mulighed for at logge SQL der udføres etc.
Ja, kan godt se fordelene. Specielt omkring det med at man bliver uafhængig af database valg. :-)
Synes dog også at man mister noget overblik og kontrol, fordi man får et lag mere på, men det er nok mere et spørgsmål om at få sat sig ind i værktøjet.
Jeg vil nu mene at du har fremragende kontrol og OK overblik med de mapping filer. Hvis du har tid så prøv og brug tid på at læse dig igennem noget af alt det du kan angive i de mapping filer. Det er ikke småting.
Men det er kode som skal vedligeholdes fuldstændigt ligesom C# kode.
Hvis du vil have det nemt, så skulle du nok også have navngivet dine sql tables med de navne du bruger i din model. :-)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.