Ниже приведен фрагмент кода для чтения Gmail. Пожалуйста, помогите мне это исправить.
Код: Выделить всё
string? body = "";
var _date = DateTime.Now;
var dateHeader = emailInfoResponse.Payload.Headers.FirstOrDefault(h => h.Name == "Date")?.Value;
if (DateTime.TryParse(dateHeader, out var emailDate))
{
_date = emailDate;
}
string _from = emailInfoResponse.Payload.Headers.Where(obj => obj.Name == "From").FirstOrDefault()?.Value ?? "";
string _to = emailInfoResponse.Payload.Headers.Where(obj => obj.Name == "To").FirstOrDefault()?.Value ?? "";
string? _subject = emailInfoResponse.Payload.Headers.Where(obj => obj.Name == "Subject").FirstOrDefault()?.Value;
string? _inReplyTo = emailInfoResponse.Payload.Headers.Where(obj => obj.Name == "In-Reply-To").FirstOrDefault()?.Value;
string? _threadId = emailInfoResponse.ThreadId;
if (_from != null)
{
if (emailInfoResponse.Payload.MimeType == "text/html")
{
body = emailInfoResponse.Payload.Body.Data;
}
else if (emailInfoResponse.Payload.MimeType.StartsWith("multipart"))
{
StringBuilder sb = new StringBuilder();
foreach (var part in emailInfoResponse.Payload.Parts)
{
if (part.MimeType == "text/plain" || part.MimeType == "text/html")
{
var body = part.Body.Data;
fullBody.Append(Encoding.UTF8.GetString(DecodeBase64(body)));
}
else if (emailInfoResponse.Payload.MimeType == "multipart/alternative" || emailInfoResponse.Payload.MimeType == "multipart/mixed" || emailInfoResponse.Payload.MimeType == "multipart/related")
В результате я не могу прочитать тело Gmail, состоящее только из одного файла изображения.
Подробнее здесь: https://stackoverflow.com/questions/792 ... p-net-core
Мобильная версия