Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to download unread email attachment using Exchange web service in ASP.NET?

I am using Exchange Server 2007 SP3

and I am able to connect exchange web service using following code

ExchangeServiceBinding esb = new ExchangeServiceBinding();
esb.RequestServerVersionValue = new RequestServerVersion();
esb.RequestServerVersionValue.Version = ExchangeVersionType.Exchange2007_SP1;
esb.Credentials = new NetworkCredential("<user_id>", "<password>", "<domain>");
esb.Url = @"https://<server_fqdn>/ews/Exchange.asmx";

I am looking for code to download unread attachment.

Could you please help me?

like image 470
Pradip Bobhate Avatar asked Sep 15 '11 15:09

Pradip Bobhate


1 Answers

I have found this:

private static void ProcessItems(ExchangeService exchangeService)
{
    var offset = 0;
    const int pageSize = 100;

    FindItemsResults<Item> result;

    do
    {
        var view = new ItemView(pageSize, offset)
        {
            SearchFilter = new SearchFilter.IsEqualTo(EmailMessageSchema.IsRead, false)
        };

        result = exchangeService.FindItems(WellKnownFolderName.Inbox, view);

        foreach (var item in result)
        {
            ProcessItem(item);
        }

        offset += pageSize;
    } while (result.MoreAvailable);
}

then from the method ProcessItem you do whatever you want to do like download attachments and so on...

source: Processing items in an Exchange folder using EWS Managed API

like image 110
Davide Piras Avatar answered Oct 30 '22 20:10

Davide Piras