Que mal ReSharper que no me lo marcó!... jeje...

gracias Fabio.

2011/2/12 Fabio Maulo <[email protected]>:
> mapper.Customize<Cliente>(c => c.Property(p => p.Nombre, m =>
> m.Unique(true)));
>
> mapper.Customize<Cliente>(c => c.Property(p => p.Nombre, m =>
> m.NotNullable(true)));
>
> podes escribirla en una sola linea ya que el concern es lo mismo (DDL
> customization).
> Igualmente yo no lo haría de esa forma ya que lo que realmente estas
> expresando es que la propiedad Nombre del cliente representa la que se
> domina : Natural Id (el identificador que tiene una entidad en su entorno
> natural)
> O sea:
> orm.TablePerClass(new[] { typeof(Cliente), typeof(Cuenta),
> typeof(Extraccion) });
> orm.VersionProperty<Cuenta>(c => c.Version);
> orm.NaturalId<Cliente>(cliente=> cliente.Nombre);
> orm.Cascade<Cliente, Cuenta>(Cascade.All);
> mapper.Customize<Cliente>(c => c.Property(p => p.Nombre, m =>
> m.NotNullable(true)));
> Que, aplicando los patterns definido
> en https://bitbucket.org/fabiomaulo/nhmystic para MSSQL2008, en XML es:
>   <class name="Cliente" table="Clientes">
>     <id type="Guid">
>       <generator class="guid.comb" />
>     </id>
>     <natural-id>
>       <property name="Nombre" not-null="true" />
>     </natural-id>
>     <many-to-one name="Cuenta" column="CuentaId" cascade="all" />
>     <bag name="Extracciones" access="field.camelcase-underscore"
> inverse="true"
> cascade="all,delete-orphan">
>       <key column="ClienteId" on-delete="cascade" />
>       <one-to-many class="Extraccion" />
>     </bag>
>   </class>
>   <class name="Cuenta" table="Cuentas">
>     <id type="Guid">
>       <generator class="guid.comb" />
>     </id>
>     <version name="Version" />
>     <property name="Saldo" />
>   </class>
>   <class name="Extraccion" table="Extracciones">
>     <id type="Guid">
>       <generator class="guid.comb" />
>     </id>
>     <many-to-one name="Cliente" column="ClienteId" />
>     <property name="Fecha" type="DateTime2" />
>     <property name="Importe" />
>   </class>
>
>
> 2011/2/12 [email protected] <[email protected]>
>>
>> Pienso que usar ConfOrm es una buena opción, aun para quienes están
>> empezando y hasta quizás "sobre todo para quienes están empezando",
>> ¿por qué?
>>
>> Porque con ConfOrm van a aprender a escribir mappings como si
>> estuvieran haciendo pair programming con gente de mucha experiencia en
>> nhibernate.
>>
>> decirle a ConfOrm "mapeame estas clases" es como preguntarle al Tano
>> "ma come scrivere un mapping di queste classi"
>>
>> A partir de los mappings que genera ConfOrm podemos generar los xml,
>> si bien esto no es necesario para usar ConfOrm, si podemos ver que nos
>> generó.
>>
>> Recién escribí un blog-post sobre algo que me llamó la atención, hace
>> un tiempo ya que uso nhibernate y sigo aprendiendo cosas nuevas, esta
>> vez me la enseñó ConfOrm: http://goo.gl/5N4wK
>>
>> por la mitad del blog-post está el código que escribe los mappings en
>> xml a partir de lo generado por ConfOrm (por si a alguien le
>> interesa).
>>
>> Si ademas estamos generando el schema de la db desde nhibernate (con
>> SchemaExport) es casi transparente el mantenimiento de la db durante
>> el desarrollo.
>>
>> Otro tema es si la db no es parte de nuestro desarrollo ya sea legacy
>> o prediseñada (e inmutable).
>>
>> saludos.
>> nelo.
>>
>>
>> 2011/2/11 NFreex <[email protected]>:
>> >
>> > Por mi parte hace menos de un mes comence con Nhibernate la version
>> > 3.0.0...
>> > Gracia a mi  compañero del trabajo, comenzamos con algo nuevo... para
>> > mi muy dificil de comprender pero me e estado adaptando a esta nueva
>> > herramienta.
>> >
>> > Nos adentramos a el a traves de la configuracion del mapeo a traves de
>> > xml les cuento que el comiezo era algo complicado aunque aun no domine
>> > por completo lo que se puede hacer dentro del xml por lo demas ya
>> > comprendo ciertas cosas, a medida que pasa el tiempo, me voy adaptando
>> > al xml.
>> >
>> > Mi recomendacion es que que si tienen un proyecto de menos de 25 a 30
>> > clases pueden trabajarlo con xml..
>> > nosotros tenemos alrededor de 22 clases y creciendo.
>> > Siempre con cuidado de no cometer algun analisis  mal empleado y
>> > hechar varias clases hacia atras o mejor dicho reconfigurar pero ya
>> > teniendo lo que se debe cambiar ya seria un paseo...
>> >
>> > Ya cuando tengamos proyecto mas grandes de mayor capacidad creo que
>> > podremos emigrar a algo como Conform pero por el momento  conozcamos a
>> > NHibernate a fondo desde los comienzos del xml...
>> >
>> > Los invitos a aquellso que no esten familiarizados con el mapping en
>> > xml, a que no olviden las costumbres antiguas donde todo era a pulmon,
>> > algo asi como el Viejo MS-DOS donde para entrar a una carpeta habia
>> > que escribir cd nombredecarpeta  y ahora con windows solo hay que dar
>> > clic.  Aveses el clic no nos demuestra que hay por debajo de todo
>> > esto ...
>> >
>> > Por eso es mejor conocer al enemigo desde sus entrañas para luego
>> > saber como enfrentarlo visualmente.
>> > Saludos desde  Panama
>> >
>> > --
>> > Para escribir al Grupo, hágalo a esta dirección:
>> > [email protected]
>> > Para más, visite: http://groups.google.com/group/NHibernate-Hispano
>>
>> --
>> Para escribir al Grupo, hágalo a esta dirección:
>> [email protected]
>> Para más, visite: http://groups.google.com/group/NHibernate-Hispano
>
>
> --
> Fabio Maulo
>
> --
> Para escribir al Grupo, hágalo a esta dirección:
> [email protected]
> Para más, visite: http://groups.google.com/group/NHibernate-Hispano

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