1
8
你用的是本地生成器,对吗? 问题在于,由于ID是由DB生成的,所以nhibernate需要往返一次才能获取ID。例如,对于服务器的标识字段,必须在scope_identity()返回有效键之前执行实际的insert语句。唯一安全地执行此操作的方法是刷新会话。 作为guid和标识的替代方案,您可以尝试“增量”生成器,看看它是否适合您的需要: http://www.hibernate.org/hib_docs/nhibernate/1.2/reference/en/html/mapping.html#mapping-declaration-id-generator 您应该知道,如果您集群应用程序,或者在同一个表中插入其他进程或应用程序,这种方法是不可行的。 PS:欲了解更多信息,请尝试 http://unhandled-exceptions.com/blog/index.php/2008/12/11/on-choosing-an-identity-type/ |
2
1
我发现了这个问题,我用一个身份作为主键。将其更改为guid有效。 |
3
0
这样可以确保不会对数据库进行任何调用。 |
Robert King · Unity C#语法问题-转换位置 1 年前 |
JBryanB · 如何从基本抽象类访问类属性 1 年前 |
law · 检查答案按钮的输入字符串格式不正确 2 年前 |
i_sniff_ket · 在unity之外使用unity类 2 年前 |