Формат даты в "я" в C # - PullRequest
0 голосов
/ 17 мая 2018

В приложении я получаю исключение

"NexusDB:: сбой выполнения запроса: исходные строковые данные слишком широки (10) для целевого поля (8) [Field: TIMESTART] [$ 3CA0 / 15520] "

при попытке вставить строку даты 28/05/2018 9:10:00 a.m. в базу данных nexus.

Преобразую дату / время в строку и отправить ее в dn, как показано ниже

dte.ToString("hh:mm tt");

Но когда я получаю am вместо AM, выдается это исключение.

В каком формате даты и времени я могу получить дату как в формате am?

1 Ответ

0 голосов
/ 17 мая 2018

Когда вы используете эту перегрузку метода ToString, вы используете текущую культуру системы. Индикатор AM / PM зависит от культуры, поэтому, если вы хотите использовать предсказуемый индикатор AM / PM, вам необходимо явно указать культуру конверсии:

dte.ToString("hh:mm tt", CultureInfo.InvariantCulture)

Для хранения, не зависящего от культуры, CultureInfo.InvariantCulture - рекомендуемый путь. Оказывается, он также предоставляет именно тот AM / PM, который вам нужен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...