Estupendos Tips Fabio..

Me responsabilizo con algunas de las cosas que mencionas aca.. Angel 
simplemente llegó a un resultado previamente enviado por mi.. 

Angel.. tengo que analizarlo con más calma.. leí el post pero quiero bajarme la 
solución y palparlo con VS. Hasta donde pude ver, me gustó bastante.

Un Hint.. A partir de la definición correcta de los HBM, como aceptar NULL o el 
tamaño de los campos para algunos tipos de datos SQL.. nuestra entidad debía 
chequear el cumplimiento de estas normas.

- Si el campo acepta NULL, utilizar los nulleables. Sino, chequear esto en 
algun lugar para no permitir la asignación.
- Si el campo que se define tiene un tamaño determinado.. digamos un 
varchar(200).. si se intenta sobrepasar dicho tamaño, chequear esto en algún 
lugar para no permitir la asignación.

Salu2
Omar.. 

PD: Buen ejemplo Angel.. ;) gracias.


----- Original Message ----- 
  From: Fabio Maulo 
  To: [email protected] 
  Sent: Tuesday, September 25, 2007 8: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-beta.google.com/group/NHibernate-Hispano
-~----------~----~----~----~------~----~------~--~---

Responder a