2009-10-05 6 views
2

Il ya un an Mitchel Sellers avait une question related ...Où est la prise en charge IMAP dans le .NET Framework?

Je souhaite accéder à Google IMAP pour envoyer et recevoir des messages électroniques dans mon application personnalisée.

Le point est que je ne voudrais pas utiliser des contrôles tiers.

Les versions les plus récentes du .Net Framework prennent-elles en charge IMAP? Quelles options ai-je?

+1

et ici http://stackoverflow.com/questions/670183/accessing-imap-in-c et ici http://stackoverflow.com/questions/545724/using-c-net-librarires-to-check- for-imap-messages-from-gmail-servers mais toujours la même réponse – Will

+0

@Will Il ya aussi le World Wide Web parce que le SO – OrElse

Répondre

1

Il y avait l'Indy components pour Borland Delphi qui ont été ported to C# et .NET.

Il n'y a pas de support natif pour cela, autant que je sache.

0

Il n'existe aucun support .NET Framework pour IMAP. Vous devrez utiliser un composant tiers.

Essayez Mail.dll email component, il est très abordable et facile à utiliser:

using(Imap imap = new Imap()) 
{ 
    imap.Connect("imapServer"); 
    imap.Login("user", "password"); 

    imap.SelectInbox(); 
    List<long> uids = imap.SearchFlag(Flag.Unseen); 
    foreach (long uid in uids) 
    { 
     string eml = imap.GetMessageByUID(uid); 
     IMail message = new MailBuilder() 
      .CreateFromEml(eml); 

     Console.WriteLine(message.Subject); 
     Console.WriteLine(message.TextDataString); 
    } 
    imap.Close(true); 
} 

Vous pouvez le télécharger ici: http://www.lesnikowski.com/mail/.

+0

J'ai fait le passage à Ubuntu pour le développement futur. Est-il possible de faire fonctionner cette bibliothèque avec C# Mono sous Linux ou de travailler avec le langage de programmation Vala? –

-2

Il n'y a pas de prise en charge IMAP dans les versions actuelles de .NET et je n'ai pas entendu parler de projets d'ajout d'un tel support au framework. Vous devez essayer l'un des composants tiers. Nous pouvons consulter notre Rebex Secure Mail.

code suivant montre comment télécharger les messages du dossier Inbox:

// create client, connect and log in 
Imap client = new Imap(); 
client.Connect("imap.example.org"); 
client.Login("username", "password"); 

// select folder 
client.SelectFolder("Inbox"); 

// get message list 
ImapMessageCollection list = client.GetMessageList(ImapListFields.Fast); 

if (list.Count == 0) 
{ 
    Console.WriteLine("There are no messages in the mailbox."); 
} 
else 
{ 
    // download the first message 
    MailMessage message = client.GetMailMessage(list[0].SequenceNumber); 
    ... 
} 

Trial peut être téléchargé à partir www.rebex.net/secure-mail.net/

Vous pouvez également profiter de Rebex Q&A forum qui fonctionne sur le moteur similaire à ce site.

Questions connexes