Viendolo bien Nestor, tienes razon, estoy modificando mi dominio para
ajustar tus sugerencias, mi duda ahora es la aplicacion del algoritmo
especifico de acuerdo al tipo de Identificacion: Cedula, Ruc, etc.

Saludos

El 7 de diciembre de 2010 12:43, Nestor Rodriguez <[email protected]>escribió:

> Te pregunto:  Porque extiendes de Identificacion? Yo creeria que no es
> necesario, para eso tienes una tipificacion de la identificacion.
>  Normalmente uno o extiende o tipifica, no ambas a menos que sea por una
> razon que aun no hayas comentado.  En caso de necesitar ambas , creeria yo,
> es necesario modificar tu estructura de persistencia.  O si no requires
> extender la identificacion te funcionaria un <component> en el cliente.
>
> Saludos,
> Nestor Rodriguez
>
> 2010/12/7 Edgar Ramos <[email protected]>
>
>> Nestor.
>>
>> Si tengo 3 clases que implementan IIdentificacion (Cedula, Ruc,
>> Pasaporte), tendre 3 component ?, esto es correcto verdad ?
>> Ya que PersonaJuridica puede aceptar cualquiera de estas 3
>> implementaciones como documento
>>
>> Saludos
>>
>> Edgar
>>
>> El 7 de diciembre de 2010 11:56, Nestor Rodriguez 
>> <[email protected]>escribió:
>>
>>> Hasta donde yo veo necesitas hacer un 
>>> component<http://nhforge.org/doc/nh/en/index.html#mapping-declaration-component>
>>>  en
>>> persona juridica para la Identificacion.   Y en el <component> haces un
>>> <many-to-one> para apuntar a TipoIdentificacion.  De todas maneras es
>>> importante que aclares cual es el problema que presentas y como has tratado
>>> de mapearlo.
>>>
>>> Saludos,
>>> Nestor Rodriguez
>>>
>>> 2010/12/7 Edgar Ramos <[email protected]>
>>>
>>>>  Gente un saludo
>>>>
>>>> Tengo la sigueinte clase
>>>>
>>>> public class PersonaJuridica : BaseEntity, ICliente
>>>>     {
>>>>         public virtual string NombreComercial { get; set; }
>>>>         public virtual string RazonSocial { get; set; }
>>>>         public virtual string Direccion { get; set; }
>>>>         public virtual string Telefono { get; set; }
>>>>
>>>>         public virtual IIdentificacion Documento { get; set; }
>>>>
>>>>         public virtual string Descripcion {
>>>>             get { return RazonSocial; }
>>>>         }
>>>>     }
>>>>
>>>> Para la propiedad public virtual IIdentificacion Documento { get; set; }
>>>> , la cual puede ser de varios tipos aqui un ejemplo de un tipo
>>>>
>>>>  public class Cedula : IIdentificacion
>>>>     {
>>>>
>>>>         #region Miembros de IIdentificacion
>>>>
>>>>         public bool EsValido() {
>>>>             ....
>>>>         }
>>>>
>>>>         public virtual string NumeroIdentificacion { get; set; }
>>>>
>>>>         public virtual TipoIdentificacion TipoIdentificacion { get; set;
>>>> }
>>>>
>>>>         #endregion
>>>>     }
>>>>
>>>> A su vez para la propiedad public virtual TipoIdentificacion
>>>> TipoIdentificacion { get; set; }  aqui la clase
>>>>
>>>> public class TipoIdentificacion : BaseEntity
>>>>     {
>>>>         public virtual string Descripcion { get; set; }
>>>>         public bool LogNatural { get; set; }
>>>>         public bool LogJuridico { get; set; }
>>>>         public bool LogConsumidorFinal { get; set; }
>>>>     }
>>>>
>>>> Yo requiero tener una tabla de la siguiente forma
>>>>
>>>> PersonaJuridica
>>>>
>>>> Id, NombreComercial, RazonSocial, etc, IdentificacionID,
>>>> NumeroIdentificacion
>>>> 1   XYZ                       XYZ                    1
>>>>    0408520096001
>>>>
>>>>
>>>> TipoIdentificacion
>>>>
>>>> Id, Descripcion, LogNatural, LogJuridico
>>>> 1  Cedula          1                0
>>>> 2  Ruc               1               1
>>>> 3  Pasaporte      1               0
>>>>
>>>> Gracias por sus comentarios
>>>>
>>>> Saludos
>>>>
>>>> Edgar
>>>>
>>>>  --
>>>> 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
>>>
>>
>>  --
>> 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
>

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