Buenos dias,

Resulta que uso fluent nhibernate para el mapeo de mi base de datos y
necesito mostrar el nombre de la categoria y no el codigo, he
encontrado varios ejemplos pero utilizando el mapeo normal .hbm.xml.
Pero el mapeo que utilizo es con clases ...... mis clases son:

public class Productos
    {
        public virtual int Codigo { get; set; }
        public virtual string Nombre { get; set; }
        public virtual int Valor { get; set; }
        public virtual int Codcategoria { get; set;
    }

public class Categorias
    {
        public virtual int Codigo { get; set; }
        public virtual string Nombre { get; set; }
        public virtual string Estado { get; set; }
    }

ESTOS SON LOS MAPEOS


public class ProductosMap : ClassMap<Productos>
    {
        public ProductosMap()
        {
            Id(x => x.Codigo).GeneratedBy.Identity();
            Map(x => x.Nombre);
            Map(x => x.Valor);
            Map(x => x.Codcategoria);
            Table("Productos");
        }
    }

public class CategoriasMap : ClassMap<Categorias>
    {
        public CategoriasMap()
        {
            Id(x => x.Codigo);
            Map(x => x.Nombre);
            Map(x => x.Estado);
            Table("Categorias");
        }
    }


Y ESTE ES EL NHibernateHelper.cs

 public class NHibernateHelper
    {
        private static ISessionFactory _sessionFactory;

        private static ISessionFactory SessionFactory
        {
            get
            {
                if (_sessionFactory == null)
                    InitializeSessionFactory();

                return _sessionFactory;
            }
        }

        private static void InitializeSessionFactory()
        {
            _sessionFactory =
FluentNHibernate.Cfg.Fluently.Configure()
                .Database(FluentNHibernate.Cfg.Db.MsSqlConfiguration.MsSql2008
                              .ConnectionString(
 
@"Server=localhost;Database=inventarioweb;integrated security=true")
                              .ShowSql()
                )
                .Mappings(m =>
                          m.FluentMappings
                              .AddFromAssemblyOf<Productos>()
                              .AddFromAssemblyOf<Categorias>())
                //Para crear las tablas si no estan creadas
                //.ExposeConfiguration(cfg => new SchemaExport(cfg)
                //                                .Create(true, true))
                .BuildSessionFactory();
        }

        public static ISession OpenSession()
        {
            return SessionFactory.OpenSession();
        }
    }


Agradecería mucho como logro hacer lo que quiero el mapeo muchos-a-uno

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