【问题标题】:Create an email using EWS Exchange and attach another email使用 EWS Exchange 创建电子邮件并附加另一封电子邮件
【发布时间】:2020-10-26 19:39:27
【问题描述】:

我在使用 EWS 将电子邮件附加到新电子邮件时遇到问题。

所以我的 findResults 中有 Microsoft.Exchnage.Webservice.Data.Item。

如果我在电子邮件的表单数据中发现问题,那么我想将该项目附加到新电子邮件并将其发送给主管以进行手动输入。

我试过了;

EmailMessage newMessage = new EmailMessage(exchange);
newMessage.Subject = "Failed lead creation";
ItemAttachment attachment = new ItemAttachment("New Lead", message);

我似乎无法创建 ItemAttachment,因为我得到的错误是“ItemAttachment 不包含带有 2 个参数的构造函数”。

如何在 EWS 中创建新消息,将当前项目附加到它并发送给另一个收件人?

谢谢

【问题讨论】:

    标签: c# exchangewebservices


    【解决方案1】:

    您不能直接发送另一条消息,您需要使用原始消息的 MimeContent,然后基于该消息创建一个 ItemAttachment,例如

        FolderId  folderid= new FolderId(WellKnownFolderName.Inbox,"MailboxName");    
        Folder Inbox = Folder.Bind(service,folderid);  
        ItemView ivItemView =  new ItemView(1) ;     
        FindItemsResults<Item> fiItems = service.FindItems(Inbox.Id,ivItemView);
        if(fiItems.Items.Count == 1){  
        EmailMessage mail = new EmailMessage(service);   
        EmailMessage OriginalEmail = (EmailMessage)fiItems.Items[0];
        PropertySet  psPropset= new PropertySet(BasePropertySet.IdOnly);    
        psPropset.Add(ItemSchema.MimeContent);
        psPropset.Add(ItemSchema.Subject);
        OriginalEmail.Load(psPropset);  
        ItemAttachment Attachment = mail.Attachments.AddItemAttachment<EmailMessage>();
        Attachment.Item.MimeContent = OriginalEmail.MimeContent;  
        ExtendedPropertyDefinition PR_Flags = new ExtendedPropertyDefinition(3591, MapiPropertyType.Integer);    
        Attachment.Item.SetExtendedProperty(PR_Flags,"1");    
        Attachment.Name = OriginalEmail.Subject;  
        mail.Subject = "See the Attached Email";  
        mail.ToRecipients.Add("glen.scales@domain.com");
        mail.SendAndSaveCopy();     
    

    干杯 格伦

    【讨论】:

      【解决方案2】:

      利用 Glen Scales 的回答,如果您有消息 ID,代码应如下所示。 PR_Flags 扩展属性的附加信息可以在以下链接中找到: http://systemmanager.ru/windowsmobile_6_5.en/html/45cd0e95-9622-4180-bf85-290c421524f3.htm

      PropertySet psPropset = new PropertySet(BasePropertySet.IdOnly);
                      psPropset.Add(ItemSchema.MimeContent);
                      psPropset.Add(ItemSchema.Subject);
                      EmailMessage attachment = EmailMessage.Bind(_exchangeService, new ItemId(ewsItemAsAttachment).UniqueId, psPropset).Result;
      
                      ItemAttachment Attachment = message.Attachments.AddItemAttachment<EmailMessage>();
                      Attachment.Item.MimeContent = attachment.MimeContent;
                      ExtendedPropertyDefinition PR_Flags = new ExtendedPropertyDefinition(3591, MapiPropertyType.Integer);
                      Attachment.Item.SetExtendedProperty(PR_Flags, "1");
                      Attachment.Name = attachment.Subject;
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-07-05
        • 2017-02-18
        • 1970-01-01
        相关资源
        最近更新 更多