当 Id 为 NHibernate 中的 Guid 时,无法从 Oracle 加载
我们将一个对象保存到 NHibernate,其中 Id 类型为 Guid。根据我们发现的其他内容,我们将其作为 char(36) 类型。
- 我们创建一个对象并通过 NHibernate 保存它。这工作正常,我们在列中看到
64599239BB0C1C48B44C36D9F9267830
。 - 当我们尝试使用 guid 加载时,我们没有得到任何结果,并且 NHibernate Profiler 显示
WHERE
子句正在查找不匹配的0x64599239BB0C1C48B44C36D9F9267830
。
显然我们做错了什么......所以有什么想法吗?
We're saving an object to NHibernate where the Id is typed Guid. Based on other things we've found we have this as a type char(36).
- We create an object and save it via NHibernate. This works fine and we see
64599239BB0C1C48B44C36D9F9267830
in the column. - When we then try to load using a guid we don't get any results and NHibernate Profiler shows that the
WHERE
clause is looking for0x64599239BB0C1C48B44C36D9F9267830
which isn't matching.
Obviously we're doing something wrong.. so any ideas what?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
数据库上的数据类型应为
RAW
,长度为16
。这就是尝试使用 NHibernate 重新创建数据库所产生的结果。The data type on the database should be
RAW
, and of16
length. This is what trying to recreate the database using NHibernate produces.