标签: c# ravendb ravendb-studio
首先,我想为这个模棱两可的问题表示歉意,但是我真的不知道该如何描述这个奇怪的问题。实际上,我在RavenDB内部有一个文档存储,尽管尝试对其进行了更改,但似乎存在一些奇怪的约束条件使它随机将其舍入为不同的值。
这是我制作的gif最好显示的:
在创建该C#类的内部,将其存储为ulong,并且所有内容都在代码直到内,正在被加载。这时我的ID不匹配。如您所见,文档名称是我要粘贴的ID,它们是匹配的;但是我却被这个非常奇怪的故障所打击。
有人有主意吗?
答案 0 :(得分:2)
潜在的问题在于JavaScript数字。 所有JS数字实际上都是double,这意味着它们适用于2到53左右的整数。除此之外,您开始失去精度。
double
这里实际发生的是浏览器正在加载文档并将其保存回去。这将通过JS引擎进行,这会导致数字精度下降。 仅当您通过Studio更新文档时,才会出现此问题。
在最新版本的RavenDB中,这将被检测到,并且您会得到警告: