Gente un saludo

Dispongo de la siguiente clase que necesito mapear

 public class Factura : BaseEntity
    {
        ....
        public virtual ICliente Cliente { get; set; }  //este es mi duda
       .....
    }

La interface ICliente

public interface ICliente
    {
         string Descripcion { get; }
    }

Aqui una implementacion de ICliente, Clase PersonaNatural, otras
implementaciones que existen este momento son ConsumidorFinal y
PersonaJuridica

 public class PersonaNatural : BaseEntity , ICliente
    {
        ....
        public virtual string ApellidoPaterno { get; set; }
        public virtual string PrimerNombre { get; set; }

        public virtual string Descripcion {

            get { return ApellidoPaterno + " "+ PrimerNombre; }
        }
       .....

Al momento de facturar el cajero de turno debera seleccionar de entre estas
implementaciones (PersonaNatural, PersonaJuridica, ConsumidorFinal) aquella
que estará
asociada a la factura.

En la base da datos, cada implementacion se ve como una tabla especifica, es
decir una tabla por cada clase concreta, para este caso 3 tablas.

Por el momento, cada implementacion de ICliente debe ser ingresado con
anterioridad, para cuando se de la facturacion, unicamente se seleccionará
un Cliente
especifico.

Mi duda es el mapping de Factura, no se como mapper el cliente cuando este
podrá ser cualquier implementacion

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

Responder a