NHibernate/Fluent NHibernate映射
是否可以绘制以下情况NHibernate/Fluent NHibernate映射,nhibernate,orm,fluent,mappings,Nhibernate,Orm,Fluent,Mappings,是否可以绘制以下情况 产品类(当前为表) 帐户类(当前为表) accountproduct类(当前为联接表,但包含与特定产品和帐户相关的附加信息) 理想情况下,我希望accountproduct能够扩展产品,并作为一种房地产产品从account获得 产品类别将单独存在,并提供自己的体验。以下内容如何: public class AccountProduct { public virtual int Id { get; set; } public v
产品类别将单独存在,并提供自己的体验。以下内容如何:
public class AccountProduct
{
public virtual int Id { get; set; }
public virtual DateTime Date { get; set; }
public virtual string Comments { get; set; }
public virtual Account Account { get; set; }
public virtual Product Product { get; set; }
public class AccountProductMap : ClassMap<AccountProduct>
{
public AccountProductMap()
{
Id(x => x.Id);
Map(x => x.Date);
Map(x => x.Comments);
References(x => x.Account);
References(x => x.Product);
}
}
}
public class Product
{
public virtual int Id { get; set; }
public virtual int Name { get; set; }
public class ProductMap : ClassMap<Product>
{
public ProductMap()
{
Id(x => x.Id);
Map(x => x.Name);
}
}
}
public class Account
{
public virtual int Id { get; set; }
public virtual int Name { get; set; }
public class AccountMap : ClassMap<Account>
{
public AccountMap()
{
Id(x => x.Id);
Map(x => x.Name);
}
}
}
公共类AccountProduct
{
公共虚拟整数Id{get;set;}
公共虚拟日期时间日期{get;set;}
公共虚拟字符串注释{get;set;}
公共虚拟帐户{get;set;}
公共虚拟产品产品{get;set;}
公共类AccountProductMap:ClassMap
{
公共帐户ProductMap()
{
Id(x=>x.Id);
地图(x=>x.Date);
地图(x=>x.Comments);
参考文献(x=>x.Account);
参考文献(x=>x.Product);
}
}
}
公共类产品
{
公共虚拟整数Id{get;set;}
公共虚拟整数名{get;set;}
公共类ProductMap:ClassMap
{
公共产品地图()
{
Id(x=>x.Id);
Map(x=>x.Name);
}
}
}
公共类帐户
{
公共虚拟整数Id{get;set;}
公共虚拟整数名{get;set;}
公共类AccountMap:ClassMap
{
公共帐户映射()
{
Id(x=>x.Id);
Map(x=>x.Name);
}
}
}
谢谢拉斐尔。您知道AccountProduct类是否可以从Product继承,Account类是否可以将AccountProducts的属性称为Products?从模型的角度来看,理想情况下,我只想公开产品和帐户,其中帐户有一个属性Products,该属性专门链接到其产品,并包含联接表额外数据(AccountProductData)。联接表本身并没有真正的用途。