Это метод GetAttachmentsFromEmail, который вы можете использовать для загрузки вложений.

аюсь использовать следующий код для подключения и загрузки вложения из электронной почты в папку «Входящие» с использованием C # и веб-служб Exchange, но получаю ошибку «System.ArgumentOutOfRangeException», и я не могу понять, почему. Я гуглил ответ, но я не могу найти один или ответы, которые я нашел, для очень старых версий EWS.

Я знаю, что остальная часть кода, как правило, работает, поскольку я могу получить доступ к другой информации, касающейся электронной почты, но не получить доступ к вложению.

Кто-нибудь может показать мне ошибку моих путей?

Заранее спасибо,

Джеймс

    static void Main(string[] args)
    {
        ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
        service.Credentials = new NetworkCredential("MYLOGIN", "MYPASSWORD", "MYDOMAIN");

        service.Url = new Uri("https://MYMAILSERVER/EWS/Exchange.asmx");

        ServicePointManager.ServerCertificateValidationCallback = delegate { return true; };

        FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Inbox, new ItemView(1000));

        foreach (Item item in findResults.Items)
        {
            if (item.HasAttachments && item.Attachments[0] is FileAttachment)
            {
                FileAttachment fileAttachment = item.Attachments[0] as FileAttachment;
                fileAttachment.Load("C:\\temp\\" + fileAttachment.Name);
            }

        }
    }
}

Решенная, но новая проблема

Сейчас я решил проблему, изменив 'foreach (элемент Item в findResults.Items)' на 'foreach (элемент EmailMessage в findResults.Items)', но теперь мне нужно выяснить, как перечислять через вложения - есть идеи у кого-нибудь?

Ответы на вопрос(1)

Ваш ответ на вопрос