我从https://msdn.microsoft.com/en-us/library/bb386947(v=vs.110).aspx中了解到,Linq到sql将将.Net框架中的十进制类型转换为sql decimal(29, 4)。我在从Linq到sql的并发性检查的Sql日志中看到了这种行为。问题是我的十进制有5位的精度。在这种情况下,Linq到sql是将10.55465转换为10.5547,然后抛出Row not found or changed错误。
我可以强制linq到- sql使用自定义类型映射从十进制到sql十进制转换吗?即使有一个并发参数类型的decimal(29,5),我也会非常高兴的。
PS:我知道我可以关闭所有高精度小数的更新检查,以防止错误发生,但我更愿意保持并发性检查。
发布于 2016-06-15 21:30:23
我想出了为什么我在尝试设置一个简单的例子时会得到这个错误。我正在生成dbml代码,列中没有dbtype属性。
https://stackoverflow.com/questions/37843823
复制相似问题