Передаем в адресной строке приложению такие данные:
http://server/controllerName/start=01.05.2018;end=10.05.2018
На стороне сервера в одном из сервисов парсим дату таким вот методом:
private DateTime ConvertDateFromString(string date) {
CultureInfo fromCulture = new CultureInfo("de-de");
if (DateTime.TryParseExact(date,
fromCulture.DateTimeFormat.ShortDatePattern,
fromCulture, DateTimeStyles.None,
out DateTime tryParseDateTime)) {
return tryParseDateTime;
}
throw new FormatException($"Дата указана в не поддерживаемом формате: {date}. Поддерживаемый формат DD.MM.YYYY");
}
В случае если запросе делаем на локальной машине то все работает ок, но когда программу запускаем в контейнере, то парсинг не удается и мы попадаем в участок с FormatException
.
В чем может быть беда?
UPDATED: Разработка ведется на винде а сервер на линуксе. Сейчас почитал что в линуксе может по другому называться культура Германии, видимо проблема в этом.
Вообще, конечно, проблема скорее всего именно в названии формата de-de
, вместо de-DE
, однако .dotnet core кросс-платформенный и таких проблем быть не должно. Но как вариант:
string format = "dd.MM.yyyy";
DateTime dt;
DateTime.TryParseExact(dateTime,
format,
CultureInfo.InvariantCulture,
DateTimeStyles.None,
out dt);
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Пишу фильтр-логгер запросовMVC WebAPI+NInject
В программе работающей под Windows 10 нажав на кнопку в которой прописано:
В приложении важны доли секунды для точных вычисленийМожно ли после введенного значения в TextBox нажав кнопку Enter выполнялся какой либо блок...
Есть html код, использую CsQuery, собственно как правильно вытащить селекторы из этого кодаИнтересует, как мне выдрать Менеджер по грузоперевозкам...