Exchangewebservices EWS托管API从带有附件的已发送邮件获取响应
当我发送邮件时,我无法获取“ServiceResponse”对象,因为我使用的“发送邮件”功能不支持它Exchangewebservices EWS托管API从带有附件的已发送邮件获取响应,exchangewebservices,Exchangewebservices,当我发送邮件时,我无法获取“ServiceResponse”对象,因为我使用的“发送邮件”功能不支持它 ServiceResponseCollection<ServiceResponse> response = service.CreateItems(new Collection<EmailMessage>() { EmailMsg }, WellKnownFolderName.SentItems, MessageDispositi
ServiceResponseCollection<ServiceResponse> response = service.CreateItems(new Collection<EmailMessage>() { EmailMsg }, WellKnownFolderName.SentItems, MessageDisposition.SendAndSaveCopy, null);
我需要返回一个ServiceResponse对象,或者仅仅是一个带有附件的电子邮件的普通httpresponse。我在谷歌搜索时甚至找不到错误(此操作不支持包含附件的项目)。我使用的是EWS管理的api 2.0,它正在运行ExchangeServer 2007 sp1,发送带有附件的电子邮件的工作流是:CreateItem、CreateAttachment,然后是SendItem。ExchangeService.CreateItems是一批CreateItem调用,它不包含拆分带有附件的项目的工作流 我建议您构建两个集合:一个包含带附件的电子邮件,另一个用于不带附件的电子邮件。批量发送不带附件的电子邮件。您必须单独发送带有附件的电子邮件,因为CreateAttachment没有批处理选项
由于EmailMessage.SendAndSaveCopy不会返回状态为的对象,因此我认为您需要依靠异常处理来确定是否成功发送了带有附件的电子邮件 这不是一个特别令人满意的答案,但我就是这么做的。我还可以对service.CreateItems提供的相同信息使用跟踪功能。我只希望有更好更直接的方法。
EmailMsg.SendAndSaveCopy(WellKnownFolderName.SentItems);