Ваше утверждение о том, что текущая культура влияет на то, как EF Core создает экземпляр DateTimeOffset
, неверно.Типы данных DateTimeOffset
и DateTime
сами по себе не имеют календаря, и текущая культура потока не влияет на то, как они создаются (если не выполняется синтаксический анализ строки).
Однако некоторые методы экземпляра, такие какas ToString
, будет использовать текущую культуру при вызове, если не указано иное.Скорее всего, вы видите строковый вывод, созданный ToString
(явно или неявно), и видите текущую культуру потока, влияющую на вывод.
Поэтому просто передайте определенную культуру (часто InvariantCulture
)ToString
, и вы увидите результат в григорианском календаре.
string myString = myDateTimeOffset.ToString(CultureInfo.InvariantCulture);