Ho implementato il seguente codice di esempio per accedere a gmail e ottenere i primi 10 oggetti di posta elettronica utilizzando AE.Net.Mail.Accesso a GMail tramite AE.Net.Mail in C#
Mi chiedo che cosa sta esattamente andando male, sto più volte ottenendo l'errore
un tentativo di connessione non riuscito perché l'entità connessa non ha risposto correttamente dopo un periodo di tempo, o stabilito il collegamento riuscita perché collegato ospite non ha risposto 173.194.79.108:993
Questo è il codice.
using System;
using System.Collections.Generic;
using System.Text;
using System.Linq;
using AE.Net.Mail;
using AE.Net.Mail.Imap;
using System.Configuration;
namespace IMAP
{
class Program
{
private static void Main()
{
var items = ReadMail();
if (items != null && items.Count > 0)
{
foreach (var item in items.Take(10))
{
Console.WriteLine(item.Subject);
}
}
Console.ReadLine();
}
public static List<MailMessage> ReadMail()
{
List<MailMessage> messages = null;
try
{
string userName = "[email protected]"; // Replace with your actual gmail id
string passWord = "password"; // Replace with your password
if (!string.IsNullOrEmpty(userName) && !string.IsNullOrEmpty(passWord))
{
using (var imapClient =
new ImapClient("imap.gmail.com", userName, passWord, ImapClient.AuthMethods.Login, 993, true))
{
imapClient.SelectMailbox("INBOX");
messages = new List<MailMessage>(imapClient.GetMessageCount());
messages = imapClient.GetMessages(0, 100, false, true).ToList();
imapClient.Disconnect();
}
}
else
{
Console.WriteLine("Username or Password is empty!");
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
return messages;
}
}
}
Si prega di aggiornare me se qualcuno ha affrontato un problema simile come questo, e come risolto.
Grazie, Sriram
Solo un piccolo suggerimento: si sta creando un elenco e poi nella riga successiva in cui la scarti e crearne uno nuovo con ToList(); Se si desidera aggiungere all'elenco creato, è necessario utilizzare AddRange (...). Nel tuo caso crei 2 elenchi di cui usi solo il secondo –
riki