2010-07-21 5 views
0

Il existe un tableau de Produits et Catégories. De nombreux produits ont une catégorie. Ainsi, dans le mappage de produit, comment puis-je écrire le code correct pour mapper avec sa catégorie?Fluent NHibernate - Plusieurs à une relation

classe de produits:

  • Est-il quelque chose comme: Références (x => x.Category) .Column ........

Répondre

1

Si vous voulez dire une catégorie a beaucoup de produits dont vous avez besoin quelque chose comme ceci:

public class ProductMap : ClassMap<Product> 
{ 
    public ProductMap() 
    { 
     Table("products"); 
     Id(x => x.Id); 
     Map(x => x.Name) 
     References(x => x.Category).Column("CategoryId"); 
    } 
} 


public class CategoryMap : ClassMap<Category> 
{ 
    public CategoryMap() 
    { 
     Table("categories"); 
     Id(x => x.Id); 
     Map(x => x.Name); 
     HasMany(x => x.Products).LazyLoad().Inverse().Cascade.All(); 
    } 
} 
0

Si c'est un many à une relation de produits de diverses catégories telles que le produit a au plus une catégorie, la mise en correspondance est:

References(x => x.Category, "CategoryId"); 

en supposant CategoryId est la clé étrangère dans la table des produits. Cependant, votre question indique que "de nombreux produits ont une catégorie". donc on ne sait pas quelle est la relation.

Questions connexes