Веб-служба Exchange - существует ли способ указать формат даты и времени при записи MimeContent EmailMessage в файл (.eml)? - PullRequest
0 голосов
/ 10 марта 2020

У меня есть приложение C#, которое получает и анализирует электронную почту с сервера обмена с помощью Microsoft.Exchange.WebServices. Чтобы сгенерировать .eml, я записываю полное свойство MimeContent на диск, который прекрасно работает, за исключением того, что заголовок Date имеет следующий формат: Thu, 05 Mar 2020 21:40:59 GMT

Это было бы хорошо, за исключением того, что некоторые часовые пояса не имеют уникальный трехбуквенный идентификатор (например, EST) и не может быть проанализирован с правильной датой времени. Есть ли способ указать другой формат даты и времени в MimeContent?

PropertySet props = new PropertySet(ItemSchema.MimeContent);
foreach (EmailMessage email in emailsToDownload.GetConsumingEnumerable(downloadTaskCancellationToken))
{
    EmailMessage emailContent = (EmailMessage) ThrottledEwsExecute(() => EmailMessage.Bind(service, email.Id, props), maxEwsCallDurationSeconds, $"Bind MimeContent for email created {email.DateTimeCreated}, id: {email.Id}");
    string filePath = LongPath.Combine(destinationFolder, $"{filePrefix}_{email.DateTimeCreated.ToString("yy-MM-dd-HH-mm-ss-fff")}_{GetCleanedUpEmailId(email.Id.ToString())}.eml");
    LongPathHelper.WriteAllBytes(filePath, emailContent.MimeContent.Content);
}
...