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
-~----------~----~----~----~------~----~------~--~---

Responder a