【发布时间】:2012-08-31 16:31:40
【问题描述】:
我正在尝试为现有的大型系统实现 nHibernate 映射。 试图映射两个对象之间的关系。一个对象是“附件”,它与系统中的许多不同对象有关。所以在数据库中它有两列用于关联自身
物品类型
物品编号
如果我有一个带有附件的产品,那么 ProductId = ItemId 和 ItemType 将是一个预定义的值,例如'0001' 其中 User 对象可能是 '0002',Order 可能是 '0003' 等等其他 ItemTypes。
现在我需要在 nhibernate 中映射它。所以我想在产品对象上有一个附件集合,但这意味着将它映射到 ItemId 和 ItemType
如果只是需要的 ItemId 映射,它可以做到
HasMany(x => x.Attachments).KeyColumn("ProductId");
但我需要将其映射到附件表中 KeyColumn“ProductId”和 ItemType 等于“0001”的位置
我该怎么办?
结构产品表
[产品]
产品编号
名字
说明
附表
[附件]
附件网址
物品编号
物品类型
【问题讨论】:
标签: c# .net fluent-nhibernate fluent-nhibernate-mapping