0
只是一个匆匆的新/短暂性NHibernate的实体的ID生成策略......我有我的映射类之一以下ID生成策略:跳绳时的ID已经提供
<id name="UID" type="System.Guid">
<column name ="UID" sql-type ="uniqueidentifier" />
<generator class="guid.comb" />
</id>
有问题的实体涉及同步/合并行为,因此必须拥有全局唯一标识符。
当首次在客户端应用程序上创建实体时,它将分配UID
属性,使其与服务器上的等效实体的值相同。
但是,上述ID生成器策略会覆盖为新/瞬态实体提供的任何值。
什么是修复?我是否必须删除生成器策略并分配自己的GUID?或者,发电机策略可配置为仅在需要时生成guid.comb
?
好,谢谢,我会尝试这一点,并尽快给您:) – Rabid 2010-07-19 22:11:17
不幸的是NHibernate的似乎更新它的内部实体状态与所生成的UID,导致以下异常:实例的 标识csl.Risk.Structure.RiskClass从12ae645e-c50f-4fc5-b0ff-9db900bd9a4e更改为42e565c7-8dd3-416f-89a2-9db801086d93;第一个guid是生成的,第二个是指定的。 Bummer :( – Rabid 2010-07-20 10:32:28
新的答案:您将不得不删除发电机策略并分配您自己的GUID。:-) – 2010-07-20 11:04:59