DocuSign Рекомендуемый анализ значения вкладки DateSigned - PullRequest
0 голосов
/ 29 мая 2018

Я извлекаю вкладку DateSigned из данных формы конверта.Возвращаемая строка форматируется следующим образом:

5/29/2018 | 1:21:42 PM PDT

Стандартные DateTime.TryParse и DateTimeOffset.TryParse не выполняются при попытке разобрать эту строку. Есть ли у DocuSign рекомендуемый способ анализа строк этого формата? Желательно, чтобы я проанализировал строку в DateTimeOffset (по сравнению с DateTime).

1 Ответ

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

Вы можете почти сделать это, используя DateTime.ParseExact или DateTime.TryParseExact.Проблема заключается в том, что нет пользовательской строки формата, которая понимает сокращение часового пояса.

Если вы удалили последние 4 символа, в которых хранится часовой пояс (включая пробел), вы можете проанализировать его, используя следующий код.

var dateString = "5/29/2018 | 1:21:42 PM"; // Time-zone stripped out
if (DateTime.TryParseExact(dateString,
                           "M/d/yyyy | h:m:s tt",
                           CultureInfo.InvariantCulture,
                           DateTimeStyles.None,
                           out var theDate))
{
    Console.WriteLine(theDate);
}
else
{
    Console.WriteLine("Unable to parse date");
}

Чтобы применить времязона, вам нужно будет вручную вычислить смещение от UTC, читая аббревиатуру и просматривая ее как-то .

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