我的应用程序相当频繁地将消息记录到数据库,因此该表使用DateTime2类型以获得更高的精度。
我使用LINQ2SQL插入条目,使用'服务器数据类型' .dbml上的属性设置为' DATETIME2 NOT NULL'。尽管如此,精度并不总是能够通过DB层。
我插入表单的条目:
LogTime = DateTime.UtcNow,
在数据库中,大多数LogTime条目都是正确的,最高可达毫秒级别,但随后以&00; 0026'结束。
2014-01-28 15:37:17.0010026
2014-01-28 15:37:17.0120026
2014-01-28 15:37:17.0310026
2014-01-28 15:37:17.0420026
2014-01-28 15:37:17.0640026
2014-01-28 15:37:17.0830026
2014-01-28 15:37:17.0960026
2014-01-28 15:37:17.1070026
2014-01-28 15:37:17.1180026
2014-01-28 15:37:17.2350026
知道这里发生了什么吗?有没有我失踪的伎俩?我应该指出,插入这些条目的相同代码段有时会成功插入具有正确精度级别的条目......它只是不一致。