访问托管的 Exchange Web 服务器中的电子邮件属性 API

Accessing email properties in Exchange web server managed API

我是 EWS 的新手,但我正在尝试将运行良好的 IMAP 程序转换为 EWS 并且在访问托管 API 中的简单字段时遇到问题,例如发件人、发件人、正文类型。谁能发现我做错了什么?非常感谢大家。

        ItemView view = new ItemView(99);
        SearchFilter.Exists filter = new SearchFilter.Exists(EmailMessageSchema.Id);
        FindItemsResults<Item> inboxMessageList = service.FindItems(WellKnownFolderName.Inbox, view);
        Console.WriteLine("Inbox message count: " + inboxMessageList.TotalCount);
        int messageCounter = 1;

        //message loop
        foreach (Item thisMessage in inboxMessageList)
        {
            //Collect info about current email message
            Item thisItem = Item.Bind(service, thisMessage.Id);
            Console.WriteLine("Current message ID: " + thisMessage.Id);

            string uniqueID = "EMAIL-" + DateTime.UtcNow.ToString("yyyyMMdd-HHmmss-fff");
            string messageTo = thisItem.DisplayTo;
            string messageCC = thisItem.DisplayCc;
            string messageFrom = //cant get this to work
            string messageSubject = thisItem.Subject;
            string messageDate = thisMessage.DateTimeReceived.ToString();
            int noOfAttachments = 0;
            Boolean messageHasAttachments = thisMessage.HasAttachments;
            if (messageHasAttachments) noOfAttachments = thisMessage.Attachments.Count();
            string isBodyHtml = //cant seem to implement this either
            Boolean domainblacklistResult = fn.CheckIfDomainBlacklisted(messageFrom);
            Boolean emailblacklistResult = fn.CheckIfEmailBlacklisted(messageFrom);

要访问有关电子邮件的信息,您需要将其绑定为 EmailMessage,而不是 Item。示例:

EmailMessage message = EmailMessage.Bind(service, thisMessage.Id);