Fluent nhibernate 流畅的NHibernate:产品对产品的多对多关系

Fluent nhibernate 流畅的NHibernate:产品对产品的多对多关系,fluent-nhibernate,nhibernate-mapping,hibernate-mapping,Fluent Nhibernate,Nhibernate Mapping,Hibernate Mapping,fluent NHibernate:产品对产品的多对多关系。我如何在asp.net mvc上实现它 public class Product { public virtual int Id { get; set; } public virtual IList<Product> ManyProduct { get; set; } } 公共类产品 { 公共虚拟整数Id{get;set;} 公共虚拟IList ManyProduct{get;s

fluent NHibernate:产品对产品的多对多关系。我如何在asp.net mvc上实现它

public class Product
{    
       public virtual int Id { get; set; }
       public virtual IList<Product> ManyProduct { get; set; }
}
公共类产品
{    
公共虚拟整数Id{get;set;}
公共虚拟IList ManyProduct{get;set;}
}
映射

public class ProductMap : ClassMap<Product>
{    
    public ProductMap()
    {
        Id(x => x.Id);
        Map(x => x.ImageUrl);
    }
    HasManyToMany(x => x.ManyProduct)
         .Cascade.All()
         .Table("ProductInProduct");
}
公共类ProductMap:ClassMap
{    
公共产品地图()
{
Id(x=>x.Id);
Map(x=>x.ImageUrl);
}
HasManyToMany(x=>x.ManyProduct)
.Cascade.All()
.表格(“ProductInProduct”);
}

您没有明确指出问题所在,但您的
定义有许多
需要从
ProductInProduct
表中指定父Id列和子Id列:

HasManyToMany(x => x.ManyProduct)
  .Table("ProductInProduct")
  .ParentKeyColumn("ParentId")
  .ChildKeyColumn("ChildId")
  .Cascade.All();