Несоответствие DateTime Tick при запросе от MySql - PullRequest
0 голосов
/ 14 октября 2019

У меня есть проект AspNetCore, который выполняет вставку свойства CreateDate типа DateTimeOffset. Когда он вставляется, и я запрашиваю его обратно, тики - это не то, что было до вставки.

Например, я создам экземпляр экземпляра моей модели и назначу его UtcNow. Значение Ticks после назначения составляет 637066095391102248. Затем я вставляю значение в MySql через EF Core и запрашиваю его обратно. Значение Ticks не то, что было, когда я его вставил. Теперь я вернусь 637066095391102240. Я потерял 8 тиков.

Если я посмотрю на MySql, то сохраненное значение будет 2019-10-14 00:25:39.110224. Я предполагаю, что происходит то, что значение усекается или округляется либо по пути в MySql с помощью EF Core, либо с помощью MySql во время вставки.

Как мне обойти это поведение? Есть ли что-то, что я могу настроить в EF Core или MySql, чтобы у меня не происходило округления?

Мой экземпляр MySql равен 8.0, и мой проект API использует следующие зависимости и их версии.

<PackageReference Include="FluentValidation" Version="8.5.0" />
<PackageReference Include="Microsoft.AspNetCore.App" />
<PackageReference Include="Microsoft.AspNetCore.Razor.Design" Version="2.2.0" PrivateAssets="All" />
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="2.2.0" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...