2017-06-21 11 views
0

EWS電子メールメッセージをOffice 365 Outlookに保存できません。EWSメールメッセージエラーを保存します。

こんにちは。 C#でMicrosoft.Exchange.WebServices libを使用して電子メールメッセージを追加しようとしました。 私はこのようになります新しい「Microsoft.Exchange.WebServices.Data.EmailMessage」、作成します。私はこのEWSメッセージを保存しようとすると、私はエラー「Microsoft.Exchange.WebServices.Dataを取得

<?xml version="1.0" encoding="utf-8"?> 
<soap:Envelope> 
    <soap:Header> 
    <t:RequestServerVersion Version="Exchange2007_SP1" /> 
    <t:TimeZoneContext> 
     <t:TimeZoneDefinition Id="UTC" /> 
    </t:TimeZoneContext> 
    <t:ExchangeImpersonation> 
     <t:ConnectingSID> 
     <t:PrimarySmtpAddress>[email protected]</t:PrimarySmtpAddress> 
     </t:ConnectingSID> 
    </t:ExchangeImpersonation> 
    </soap:Header> 
    <soap:Body> 
    <m:CreateItem MessageDisposition="SaveOnly"> 
    <m:SavedItemFolderId> 
     <t:FolderId Id="AQMkAGFjMjFlOTJlLWI3YjYtNDZlMS04MTRkLTYyYWECMTg2MmIzAC4AAAMRJLfC0jQnTqZjTdO9e1KoAQCygVW3rMc4SbvynFv3xnH6AAACAQwAAAA=" /> 
    </m:SavedItemFolderId> 
    <m:Items> 
     <t:Message> 
     <t:Subject>SubjectSample</t:Subject> 
     <t:Body BodyType="HTML">BodySample</t:Body> 
     <t:ExtendedProperty> 
     <t:ExtendedFieldURI PropertyTag="57" PropertyType="SystemTime" /> 
     <t:Value>2017-02-17T16:37:38.000</t:Value> 
     </t:ExtendedProperty> 
     <t:ExtendedProperty> 
     <t:ExtendedFieldURI PropertyTag="3590" PropertyType="SystemTime" /> 
     <t:Value>2017-02-17T16:37:38.000</t:Value> 
     </t:ExtendedProperty> 
     <t:ExtendedProperty> 
     <t:ExtendedFieldURI PropertyTag="3591" PropertyType="Integer" /> 
     <t:Value>1</t:Value> 
     </t:ExtendedProperty> 
     <t:From> 
     <t:Mailbox> 
     <t:Name>support</t:Name> 
     <t:EmailAddress>[email protected]</t:EmailAddress> 
     </t:Mailbox> 
     </t:From> 
     <t:IsRead>true</t:IsRead> 
     </t:Message> 
    </m:Items> 
    </m:CreateItem> 
    </soap:Body> 
</soap:Envelope> 

を.ServiceResponseException ' レスポンスコード:' ErrorInvalidExchangeImpersonationHeaderData 'とメッセージ:' ExchangeImpersonation SOAPヘッダーには、ユーザープリンシパル名、ユーザーSID、またはプライマリSMTPアドレスが必要です。 '私はServiceAccount認証を使用します。

数日前にうまくいきました。

+0

beowエラーがPrimarySmtpAddressで使用されているEMAILADDRESSは、アカウントのプライマリ電子メールアドレスではないことを伝えるされています。数日前に動作していて、ほとんど動作しなくなった場合、PrimarySMTPAddressが変更された可能性があります。 –

+0

PrimarySmtpAddressは変更されませんでした。 –

答えて

0

私は電子メールメッセージで作業していませんが、msdnリンクread Anchor Mailboxおよび予定フェッチエクスペリエンスでAnchor Mailboxヘッダーを渡してみてください。

サンプルコードは

ImpersonatedUserId impersonatedUserId = new ImpersonatedUserId(ConnectingIdType.SmtpAddress, strAttendeeEmail); 
            _service.ImpersonatedUserId = impersonatedUserId; 
            if (!_service.HttpHeaders.ContainsKey("X-AnchorMailbox")) 
             _service.HttpHeaders.Add("X-AnchorMailbox", strAttendeeEmail); 
            else 
             _service.HttpHeaders["X-AnchorMailbox"] = strAttendeeEmail; 
関連する問題