Как уже говорили другие, используйте DateTime.ParseExact
или DateTime.TryParseExact
, возможно, с инвариантной культурой.Однако вы также должны знать, в каком часовом поясе находится журнал. Используйте DateTimeStyles.AssumeUniversal
или DateTimeStyles.AssumeLocal
, соответственно, или, возможно, ни один из них.Фундаментально, DateTime
немного обманчив, и вы можете легко сделать неправильную вещь.Вы, вероятно, должны убедиться, что DateTime
, который вы передаете в свою базу данных, находится в UTC.
Альтернативой для синтаксического анализа является использование Noda Time , что обеспечивает немного большую ясность (IMO) о том, как вы анализируете и т. д. Затем вы можете преобразовать в соответствующий DateTime
для передачи в вашу базу данных.