Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.12.2019, 02:13   #1
Max_t
 
Регистрация: 18.02.2019
Сообщений: 7
По умолчанию C# MailKit - определить дату получения сообщения

При получении сообщения с помощью MailKit по протоколу IMAP или POP3 использую свойство message.Date.UtcDateTime Если правильно понимаю, это дата отправки. Надо обрабатывать только новые сообщения. Проблема в том, что иногда сообщения с более ранним значением даты приходят позже. Если обрабатывать только сообщения с датой, более новой, чем последнее полученное, сообщения могут теряться, если их дата окажется более ранней.
В каждом сообщении есть текст, который начинается с Received: from и заканчивается датой в формате Fri, 06 Dec 2019 01:31:12 +0300 Первое вхождение такого текста позволяет найти дату получения сообщения. Эта дата идет обычно по возрастанию от старых сообщений к новым. Проблема в том, что на сервере mail.ru заметил, что время сообщений изменилось на несколько часов между двумя сообщениями, полученными в течение короткого промежутка времени, и осталось тем же.
Есть ли надежный и желательно простой способ сортировать сообщения по дате получения. Абсолютное значение даты не самый важный вопрос. Важно, чтобы у более новых сообщений дата всегда была более новой.

Кроме того, при получении почты по POP3 с gmail.com получает только около 700 старых сообщений и не получает новые. С IMAP и с другими серверами такой проблемы нет. Понимаю, что лучше использовать IMAP, но есть вопрос в связи с возможным использованием серверов, где есть только POP3.
Max_t вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Определить дату и выбрать время Shouldercannon PHP 2 02.09.2017 19:55
Как определить кто меняет дату? Utkin Софт 4 25.12.2013 21:52
классы, определить дату vitaxa3581 Общие вопросы C/C++ 0 15.03.2013 21:26
Определить дату Guagpro Паскаль, Turbo Pascal, PascalABC.NET 7 23.01.2013 21:41
Зависание программы при попытки получения сообщения. Lokos Работа с сетью в Delphi 8 28.08.2010 12:29