Когда я пытаюсь получить Mime-контент вложения электронной почты, используя приведенный ниже код
msgAttachment.Load(new PropertySet(ItemSchema.MimeContent));
MimeContent mc = msgAttachment.Item.MimeContent;
Я получаю следующее исключение во второй строке
Произошло исключение Microsoft.Exchange.WebServices.Data.ServiceRequestException HResult=-2146233088 Message=Запрос не выполнен. Не удалось прочитать данные из транспортного соединения: соединение было закрыто. Source=Microsoft.Exchange.WebServices StackTrace: в Microsoft.Exchange.WebServices.Data.SimpleServiceRequestBase.ReadResponse(ответ HttpWebResponse) в Microsoft.Exchange.WebServices.Data.SimpleServiceRequestBase.InternalExecute() в вложениях Microsoft.Exchange.WebServices.Data.MultiResponseServiceRequest
1.Execute() at Microsoft.Exchange.WebServices.Data.ExchangeService.InternalGetAttachments(IEnumerable
1 , Nullable1 bodyType, IEnumerable
1 AdditionalProperties, ServiceErrorHandling errorHandling) в Microsoft.Exchange.WebServices.Data.ExchangeService.GetAttachment(Attachment, Nullable1 bodyType, IEnumerable
1 AdditionalProperties) в Microsoft.Exchange.WebServices.Data.Attachment.InternalLoad(Nullable1 bodyType, IEnumerable
1 AdditionalProperties) в Microsoft.Exchange.WebServices.Data .ItemAttachment.Load(IEnumerable1 additionalProperties) at Presensoft.JournalEmailVerification.EmailVerification.DownloadFailedAttachments(EmailMessage msg, JournalEmail journalEmail) in D:\Source\ProductionReleases\Release_8.0.7.0\Email Archiving\Presensoft.JournalEmailVerification\EmailVerification.cs:line 621 InnerException: System.IO.IOException HResult=-2146232800 Message=Unable to read data from the transport connection: The connection was closed. Source=System StackTrace: at System.Net.ConnectStream.Read(Byte[] buffer, Int32 offset, Int32 size) at System.IO.Compression.DeflateStream.Read(Byte[] array, Int32 offset, Int32 count) at System.IO.Compression.GZipStream.Read(Byte[] array, Int32 offset, Int32 count) at System.Xml.XmlTextReaderImpl.ReadData() at System.Xml.XmlTextReaderImpl.ParseText(Int32& startPos, Int32& endPos, Int32& outOrChars) at System.Xml.XmlTextReaderImpl.ParseText() at System.Xml.XmlTextReaderImpl.ParseElementContent() at System.Xml.XmlCharCheckingReader.Read() at Microsoft.Exchange.WebServices.Data.EwsXmlReader.Read() at Microsoft.Exchange.WebServices.Data.ComplexProperty.InternalLoadFromXml(EwsServiceXmlReader reader, XmlNamespace xmlNamespace, String xmlElementName, Func
2 readAction) в Microsoft.Exchange.WebServices.Data.ComplexProperty.LoadFromXml(EwsServiceXmlReader reader, XmlNamespace xmlNamespace, String xmlElementName) в Microsoft.Exchange.WebServices.Data.ComplexProperty.LoadFromXml( Средство чтения EwsServiceXmlReader, String xmlElementName) в Microsoft.Exchange.WebServices.Data.ComplexPropertyDefinitionBase.InternalLoadFromXml(считыватель EwsServiceXmlReader, PropertyBag propertyBag) в Microsoft.Exchange.WebServices.Data.ComplexPropertyDefinitionBase.LoadPropertyValueFromXml(считыватель EwsServiceXmlReader, PropertyBag propertyBag) в Microsoft.Exchange Данные. (считыватель EwsServiceXmlReader) в Microsoft.Exchange.WebServices.Data.ComplexProperty.InternalLoadFromXml (считыватель EwsServiceXmlReader, XmlNamespace xmlNamespace, String xmlElementName, Func2 readAction) at Microsoft.Exchange.WebServices.Data.ComplexProperty.LoadFromXml(EwsServiceXmlReader reader, XmlNamespace xmlNamespace, String xmlElementName) at Microsoft.Exchange.WebServices.Data.ComplexProperty.LoadFromXml(EwsServiceXmlReader reader, String xmlElementName) at Microsoft.Exchange.WebServices.Data.GetAttachmentResponse.ReadElementsFromXml(EwsServiceXmlReader reader) at Microsoft.Exchange.WebServices.Data.ServiceResponse.LoadFromXml(EwsServiceXmlReader reader, String xmlElementName) at Microsoft.Exchange.WebServices.Data.MultiResponseServiceRequest
1.ParseRespon se(считыватель EwsServiceXmlReader) в Microsoft.Exchange.WebServices.Data.ServiceRequestBase.ReadResponse(EwsServiceXmlReader ewsXmlReader) в Microsoft.Exchange.WebServices.Data.SimpleServiceRequestBase.ReadResponse(ответ HttpWebResponse) InnerException:
Я заметил, что это происходит, когда конкретное вложение электронной почты является нежелательным письмом со следующим содержанием:
В системе электронной почты возникла проблема с обработкой этого сообщения. Exchange не будет пытаться повторно доставить вам это сообщение.
Диагностическая информация для администраторов:
Генерирующий сервер: MAIL.saaital.com
550 5.6.0 M2MCVT.StorageError; ошибка хранения при преобразовании контента
Любые намеки .. указатели ?? . Мне действительно нужна помощь в этом, так как я довольно долго пытался обработать это конкретное вложение электронной почты.