我们有一个实体,它使用NHibernate加载称为产品。
产品有一个类别,NHibernate很高兴为我填充。
数据库
在数据库中,产品具有的类别的外键。
方案
用户编辑该产品(通过网络接口),并选择不同的类别(说的不是“鱼”,我们选择“素食”)。
这可能是一个下拉列表,显示每个类别。当他们选择不同的类别时,我们得到一个int键。
问题
显然,我们现在要更改保存到产品,但实际上唯一的变化是保存新的int(比如说2,而不是1)。
因此,我们检索现有产品,现在出现问题。
我们在产品上没有“CategoryID”字段,我们只有一个Category属性。
但是,我们并不真的想要检索类别(通过ID)只是为了将其分配给产品。
所以我想我想知道的是,我们应该......
一)一个类别id属性添加到产品
B)创建一个新的类别,分配给它的相关标识,并附上对产品(但肯定会导致错误,或覆盖现有类别)
C)检索(查找)从系统(由ID类),并附上商品
d)做别的东西完全!
是的,似乎工作。 我只有一个可以为空的日期时间字段,我需要确保我的映射和模型反映的事实,它可以为空(否则NHibernate抛出一个关于无效日期时间值的错误) – 2009-11-20 11:47:49
但该可空的日期是在产品(不是类别)对不对? – dotjoe 2009-11-20 14:23:43
+1我又回来了。 :) – Dusty 2009-12-07 19:38:40