【问题标题】:Outlook Export Distribution Lists + items included with C#Outlook 导出分发列表 + C# 中包含的项目
【发布时间】:2022-05-05 00:14:39
【问题描述】:

我正在创建一个代码,用于从 Outlook 导出联系人 + 分发列表以将它们存储在 BDD 中。

我可以使用以下代码导出联系人:

mapiFolder.Items.Restrict([MessageClass] = \"IPM.Contact\);

完成后,我对分发列表执行相同操作

mapiFolder.Items.Restrict("[MessageClass] = \"IPM.DistList\"");

我正在解析我的分发列表并在库 Redemption 的帮助下以这种方式存储它们:

foreach (DistListItem distributionListItem in distributionListItems)
                {
                    //use of Redemption to avoid a security message when accessing to contacts list
                    var safeList = new SafeDistList();

                    safeList.Item = distributionListItem;

                    var safeDistListExtended = new SafeDistListExtended(safeList, distributionListItem.DLName);

一旦我“阅读”了所有分发列表,就可以将它们插入 BDD。

第一件事:检查每个通讯组列表中包含的内容,我的意思是,联系人或/和通讯组列表本身可以包含其他联系人或/和通讯组列表等等。

var recipients = new List<SafeRecipient>();

        for (int counterMember = 1; counterMember <= pSafeDistListExtended.DistList.MemberCount; counterMember++)
        {
            SafeRecipient safeRecipient = pSafeDistListExtended.DistList.GetMember(counterMember);

            safeRecipient.Resolve();

            if (safeRecipient.Resolved)
            {
                recipients.Add(safeRecipient);                                
            }
        }

我的问题是,我可以将 ContactItems 包含在我的通讯组列表中,但我无法获取通讯组列表,但只能包含它们的名称。

我想要的是,当我解析循环“GetMember”时,我将一个对象“分发列表”转换为它实际上是另一个包含在另一个分发列表中的分发列表。

因为现在,我将分发列表中包含的所有对象都视为同一类型的对象。

有人会知道怎么做吗??

只是为了让您知道使用循环获取联系人的方式

Member.Count

GetMember(x)

远不是理想的,因为我们可以期望一个对象层次结构。包含 ContactItems +/或 Distributions Lists 等的分发列表...

感谢您的帮助。

【问题讨论】:

    标签: c# outlook export


    【解决方案1】:

    首先,您可能希望切换到 RDO 系列对象而不是使用 OOM + Safe*Item 对象:http://www.dimastr.com/redemption/rdo_introduction.htm 其次,RDODistListItem.GetMembers 将返回RDOAddressEntries。对于该集合中的每个 RDOAddressEntry 对象,递归处理每个对象 - 分发列表将依次通过 RDOAddressEntry.Members 集合公开其成员。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-05-02
      • 2011-09-13
      • 1970-01-01
      • 2021-12-28
      • 2019-09-06
      • 2014-07-15
      • 2017-04-12
      相关资源
      最近更新 更多