EWS CreateItem将所有消息创建为草稿

时间:2012-09-17 14:25:36

标签: exchange-server exchangewebservices

我正在尝试按照http://msdn.microsoft.com/en-us/library/exchange/aa566468%28v=exchg.140%29.aspx使用Exchange Web Services for Exchange 2010的CreateItem函数来创建消息。无论我做什么,邮件总是作为草稿出现在Outlook中。这是我发送的XML:

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
  <soap:Header>
    <t:RequestServerVersion Version="Exchange2010_SP1"/>
  </soap:Header>
  <soap:Body>
    <CreateItem MessageDisposition="SaveOnly" xmlns="http://schemas.microsoft.com/exchange/services/2006/messages">
      <SavedItemFolderId>
        <t:FolderId ChangeKey="..." Id="..."/>
      </SavedItemFolderId>
      <Items>
        <t:Message>
          <t:MimeContent CharacterSet="UTF-8">BASE64 ENCODED MESSAGE</t:MimeContent>
          <t:ItemClass>IPM.Note</t:ItemClass>
          <t:Subject>THE SUBJECT LINE</t:Subject>
          <t:Sensitivity>Normal</t:Sensitivity>
          <t:Importance>Normal</t:Importance>
          <t:Culture>en-US</t:Culture>
          <t:IsRead>true</t:IsRead>
        </t:Message>
      </Items>
    </CreateItem>
  </soap:Body>
</soap:Envelope>

我尝试添加&lt; t:IsDraft&gt; false&lt; / t:IsDraft&gt;到&lt; t:Message /&gt;但似乎是不允许的。

3 个答案:

答案 0 :(得分:0)

游戏后期,但我们有这个,这是由于Exchange计算机上的存储空间不足。

答案 1 :(得分:-1)

姗姗来迟,但今天就出现在我的搜索中。

MessageDisposition控制它是否是草稿。您有<CreateItem MessageDisposition="SaveOnly",需要<CreateItem MessageDisposition="SendAndSaveCopy"

答案 2 :(得分:-1)

如果您未在PR_MESSAGE_FLAGS请求上指定CreateItem扩展属性,it defaults to MSGFLAG_UNSENT | MSGFLAG_UNMODIFIED(十进制10)。换句话说,一个未读的,未经修改的草案。

The initial values for this property are typically MSGFLAG_UNSENT
and MSGFLAG_UNMODIFIED to indicate a message that has not yet been
sent or changed. When a message is saved for the second time, the
message store provider clears the MSGFLAG_UNMODIFIED flag.

如果您将以下内容添加到您的<Message>请求中,那么您将创建一个读取非草稿:

  <t:ExtendedProperty> 
    <t:ExtendedFieldURI PropertyTag="3591" PropertyType="Integer" /> 
    <t:Value>1</t:Value> 
  </t:ExtendedProperty>

Value的扩展属性&1表示MSGFLAG_READ。)