如何使用NHibernate(Fluent或XML)映射这些表

如何使用NHibernate(Fluent或XML)映射这些表,nhibernate,database-design,fluent-nhibernate,nhibernate-mapping,Nhibernate,Database Design,Fluent Nhibernate,Nhibernate Mapping,你能帮我处理这个数据库吗 我使用的是Fluent NHibernate,但XML也有帮助。。。 我的问题是产品价格表 谢谢 保罗没什么特别的 <class name="ProductPrice"> <id name="Id"> <generator class="..."/> </id> <property name="Price"/> <property name="IsSale"/> <

你能帮我处理这个数据库吗

我使用的是Fluent NHibernate,但XML也有帮助。。。 我的问题是产品价格

谢谢

保罗

没什么特别的

<class name="ProductPrice">
  <id name="Id">
    <generator class="..."/>
  </id>
  <property name="Price"/>
  <property name="IsSale"/>
  <property name="PriceSale"/>
  <property name="Sku"/>
  <many-to-one name="ProductSize" column="SizeProductFk"/>
  <many-to-one name="ColorProduct" column="ColorProductFk" />
</class>

当然,您必须将ProductSize和ColorProduct映射为实体。

没有什么特别的

<class name="ProductPrice">
  <id name="Id">
    <generator class="..."/>
  </id>
  <property name="Price"/>
  <property name="IsSale"/>
  <property name="PriceSale"/>
  <property name="Sku"/>
  <many-to-one name="ProductSize" column="SizeProductFk"/>
  <many-to-one name="ColorProduct" column="ColorProductFk" />
</class>


当然,您必须将ProductSize和ColorProduct映射为实体。

NHibernate现在支持JPA(在.NET平台上称为NPersistence或NPA),包括JPA注释。 这是映射实体并使代码可移植到其他供应商的最佳方式。 过来看: www.npersistence.com

如果使用NPersistence,只需映射:

[Entity]

class ProductPrice

{
    [Id]
    public virtual int Id {get; set;}`

    public virtual int Price {get; set;}
    public virtual int IsSale {get; set;}
    public virtual int Id {get; set;}

    [ManyToOne]
    [Column(Name="SizeProductFk")]
    public virtual ProductSize {get; set;}
}

NHibernate现在支持JPA(在.NET平台上称为NPersistence或NPA),包括JPA注释。 这是映射实体并使代码可移植到其他供应商的最佳方式。 过来看: www.npersistence.com

如果使用NPersistence,只需映射:

[Entity]

class ProductPrice

{
    [Id]
    public virtual int Id {get; set;}`

    public virtual int Price {get; set;}
    public virtual int IsSale {get; set;}
    public virtual int Id {get; set;}

    [ManyToOne]
    [Column(Name="SizeProductFk")]
    public virtual ProductSize {get; set;}
}

你为什么不开始问一些具体的问题呢?你基本上是在要求社区为你做一切。我的问题只是产品价格表。。。其他表格只显示所有相关表格…好的,我会帮你的。你为什么不开始询问具体问题?你基本上是在要求社区为你做一切。我的问题只是产品价格表。。。其他表格只显示所有相关表格…好的,我会帮你的。谢谢迭戈。。。但我还有一个问题。。。示例:如何获得每个示例的产品Id为4的所有ProductPrice?也许我的数据库设计不好/不适合轻松解决这个问题…HQL示例:
来自ProductPrice pp,其中pp.ProductSize.Product.id=4
。你的设计没有问题。谢谢。。。但在某些情况下,产品没有颜色或尺寸。。。那么,我怎样才能得到他的价格呢?如果一个产品没有颜色或尺寸,那么你就失去了价格和产品之间的关系。是的,你需要产品价格和产品之间的直接关系。您可以保留与ProductSize和ColorProduct的关系,或者直接映射到Product、Color和Size(在这种情况下,您可能会根据需要删除ProductSize和ColorProduct)。谢谢Diego。。。但我还有一个问题。。。示例:如何获得每个示例的产品Id为4的所有ProductPrice?也许我的数据库设计不好/不适合轻松解决这个问题…HQL示例:
来自ProductPrice pp,其中pp.ProductSize.Product.id=4
。你的设计没有问题。谢谢。。。但在某些情况下,产品没有颜色或尺寸。。。那么,我怎样才能得到他的价格呢?如果一个产品没有颜色或尺寸,那么你就失去了价格和产品之间的关系。是的,你需要产品价格和产品之间的直接关系。您可以保留与ProductSize和ColorProduct的关系,或者直接映射到Product、Color和Size(在这种情况下,您可能会根据需要删除ProductSize和ColorProduct)