Q:

More Extensive Body for Gmail Atom Feed

I have developed a simple application for getting the atom feed of a gmail account and saving it's contents to a xml file.  This application is for prototyping purposes and will be used at a later stage when i can figure it all out.  Thus far everything works perfectly, however the body the atom feeder returns is just a short summary.  Now i understand that the atom feeder only returns unread emails in the inbox, and the contents it returns is the subject,fromAdress,Summary and a few other logistical fields, however at no point does it return the full body, and that is what i require, how do i achive this? 
Here is a copy of my code : 
 private void btnGetFeed_Click(object sender, EventArgs e)
    {
        var url = @"https://gmail.google.com/gmail/feed/atom";

        var Username = "me@email.com";
        var Password = "mycode";

        var encoded = TextToBase64(Username + ":" + Password);

        var myWebRequest = HttpWebRequest. Create(url);
        myWebRequest. Method = "POST";
        myWebRequest. ContentLength = 0;
        myWebRequest. Headers. Add("Authorization","Basic " + encoded);

        var response = myWebRequest. GetResponse();
        var stream = response. GetResponseStream();

        XmlReader reader = XmlReader. Create(stream);
        XmlDocument doc = new XmlDocument();
        doc. Load(reader);
        doc. Save("AtomFeed.xml");

    }

    public static string TextToBase64(string sAscii)
    {
        System. Text. ASCIIEncoding encoding = new System. Text. ASCIIEncoding();
        byte[] bytes = encoding. GetBytes(sAscii);
        return System. Convert. ToBase64String(bytes, 0, bytes. Length);
    }

A:

Use aenetmail's IMAP client:
github
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
}

