使用 GetRDOObjectFromOutlookObject 时,兑换邮件对象未正确链接到原始邮件项目
Redemption mail object not properly linked to original mail item when using GetRDOObjectFromOutlookObject
我有 运行 这种情况,如果我从 OOM 获得了 MailItem
并且这封电子邮件是新创建的,它的条目 ID 将是 null
。如果我使用 RDOSession.GetRDOObjectFromOutlookObject
方法从这个 MailItem
得到一个 RDOMail
,得到的 RDOMail
将所有属性都为 null 或设置为它们的默认值并更改它们'改变原来MailItem
.
中相应属性的值
使用相同的方法从现有 MailItem
(具有有效条目 ID 的条目)中获取 RDOMail
工作正常。
Redemption 文档中未记录此行为。只是想知道我是否遗漏了什么?
这是 Outlook 对象模型一直做的(或者更确切地说没有做的)- 在保存项目之前,无法通过 MAPI 访问通过 UI 或 Outlook 对象模型设置的最新更改。
GetRDOObjectFromOutlookObject 的主要目的不是方便访问未保存的更改,而是确保 Redemption 和 OOM 最终使用从 MailItem.MAPIOBJECT 检索到的相同 IMessage 对象以避免打开相同的 IMessage对象两次(保存时可能会导致冲突)。
我有 运行 这种情况,如果我从 OOM 获得了 MailItem
并且这封电子邮件是新创建的,它的条目 ID 将是 null
。如果我使用 RDOSession.GetRDOObjectFromOutlookObject
方法从这个 MailItem
得到一个 RDOMail
,得到的 RDOMail
将所有属性都为 null 或设置为它们的默认值并更改它们'改变原来MailItem
.
使用相同的方法从现有 MailItem
(具有有效条目 ID 的条目)中获取 RDOMail
工作正常。
Redemption 文档中未记录此行为。只是想知道我是否遗漏了什么?
这是 Outlook 对象模型一直做的(或者更确切地说没有做的)- 在保存项目之前,无法通过 MAPI 访问通过 UI 或 Outlook 对象模型设置的最新更改。
GetRDOObjectFromOutlookObject 的主要目的不是方便访问未保存的更改,而是确保 Redemption 和 OOM 最终使用从 MailItem.MAPIOBJECT 检索到的相同 IMessage 对象以避免打开相同的 IMessage对象两次(保存时可能会导致冲突)。