Hola gente! Gracias, Fabio, por las recomendaciones, y a Omar por la idea. Bien, varias fueron aplicadas, ver la descripcion de la nueva version en:
http://msmvps.com/blogs/lopez/archive/2007/10/29/generando-c-243-digo-para-nhibernate-parte-3.aspx Desde el modelo propuesto por Omar, se pueden generar aplicaciones completas ASP.NET 2.0: - Con VB.NET 2, acceso con NHibernate a MS SQL Server - Con CSharp 2, acceso con NHibernate a MS SQL Server - Con VB.NET 2, con algunas ideas de Domain-Driven Design, con NHibernate - Con CSharp 2, con algunas ideas de Domain-Driven Design, con NHibernate Alguna explicacion mas sobre el proyecto de generacion de codigo en http://msmvps.com/blogs/lopez/archive/2007/06/25/generando-aplicaciones-con-ajgenesis.aspx Proximos pasos, como prueba del concepto de generar desde un modelo nuestro, con distintas tecnologias (algo ya lo estoy haciendo, pero no con el modelo de Omar): - Generacion de Java, con JSP, acceso via JDBC, a MySql como ejemplo - Generacion de Java, con JSP, acceso via Hibernate - Java, con JSP, DDD, Hibernate - Java, con Struts, JSP, DDD, Hibernate Nos leemos! Angel "Java" Lopez http://www.ajlopez.com/ ----- Original Message ----- From: Fabio Maulo To: [email protected] Sent: Tuesday, September 25, 2007 9:25 AM Subject: [NHibernate-Hispano] Re: Generando Codigo para NHibernate El día 25/09/07, Angel Java Lopez <[EMAIL PROTECTED]> escribió: Comentarios? Sugerencias? -No es necesario que el joined-subclass o el subclass estén anidados con su superClass. Tal vez sea mas facil escribir los templates si se declaran a parte (file xml separado usando el tag extends). -El "lazy=true" es inecesario ya desde hace varios meses. lazy=true es el default. -La configuración de NH es mejor escribirla usando hibernate-configuration; en el web.config o en el files externo no es la cuestión. El asunto es que la diabolica nameValuesList desaparece a partir de NH2.0. -En las entities hay que declarar todo virtual ya que se trabaja con lazy o... definir una interfaz para que pueda operar el DynamicProxy. -Los SqlTypes es mejor no usarlos si no es estrictamente necesario: NH sabe cual es la corrispondencia entre un tipo NET y un tipo SQL para un RDBMS especifico. Si se quieren usar SqlTypes sería mejor tener template nombrados con algún acronimo del RDBMS. - Esto "name="AjOmar.Entities.Company, AjOmar.Entities"" sería mejor escribirlo como "name="Company"" y dejar el namespace/assembly en la cabecera del XML como <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="AjOmar.Entities" namespace="AjOmar.Entities "> -un pequeño truco es usar el <default-access> apuntando a los fields así el proxy no se molesta cuando NH lee/escribe valores. - habría que verificar que hay en los templates para generación de script de generación de DB. Hay cosas que debería saber tambien NH (por ejemplo si una propiedad no es nullable) -si un campo tiene el mismo nombre de la propiedad no es necesario definir el tag <column> (como decis vos: "hay veces que mirar el xml te daña los ojos" menos se escribe y mejor se lee) -La tarea de generar para NET1.x yo la borraría. Generar significa que alguien está haciendo algo nuevo y hacerlo en NET1.x cuando está por salir oficialmente NET3.5 me parece anacronistico. (usando NH compilado para NET1.1 se pierden features y NH2.0 no será mas compatible con NET1.1) Ahora me tengo que ir.... despues miro los DAOs... tal vez se puedan simplificar usando las clases de uNhAddIns. Bye. Fabio. --~--~---------~--~----~------------~-------~--~----~ Para escribir al Grupo, hágalo a esta dirección: [email protected] Para más, visite: http://groups.google.com/group/NHibernate-Hispano -~----------~----~----~----~------~----~------~--~---
