问题
I want to read my Gmail Inbox by using Google.GData.Client.dll
. How do I accomplish this? I would like a sample program.
回答1:
I found GMailAtomFeed
// Create the object and get the feed
RC.Gmail.GmailAtomFeed gmailFeed = new RC.Gmail.GmailAtomFeed("username", "password");
gmailFeed.GetFeed();
// Access the feeds XmlDocument
XmlDocument myXml = gmailFeed.FeedXml
// Access the raw feed as a string
string feedString = gmailFeed.RawFeed
// Access the feed through the object
string feedTitle = gmailFeed.Title;
string feedTagline = gmailFeed.Message;
DateTime feedModified = gmailFeed.Modified;
//Get the entries
for(int i = 0; i < gmailFeed.FeedEntries.Count; i++) {
entryAuthorName = gmailFeed.FeedEntries[i].FromName;
entryAuthorEmail = gmailFeed.FeedEntries[i].FromEmail;
entryTitle = gmailFeed.FeedEntries[i].Subject;
entrySummary = gmailFeed.FeedEntries[i].Summary;
entryIssuedDate = gmailFeed.FeedEntries[i].Received;
entryId = gmailFeed.FeedEntries[i].Id;
}
also you should look
http://code.msdn.microsoft.com/CSharpGmail
http://weblogs.asp.net/satalajmore/archive/2007/12/19/asp-net-read-email.aspx
回答2:
Use aenetmail's IMAP client: github. I think it's a better alternative than GMailAtomFeed because you can retrieve the entire body of the emails and it has many many more options.
Here's an example:
using (var ic = new AE.Net.Mail.ImapClient("imap.gmail.com", "email", "pass", AE.Net.Mail.AuthMethods.Login, 993, true))
{
ic.SelectMailbox("INBOX");
MailMessage[] mm = ic.GetMessages(0, 10);
// at this point you can download the messages
}
来源:https://stackoverflow.com/questions/4461946/read-gmail-inbox