【问题标题】:Microsoft Exchange WebService Contact Email Addresses formattingMicrosoft Exchange WebService 联系人电子邮件地址格式
【发布时间】:2022-04-29 12:04:25
【问题描述】:

我已经设置了一个 microsoft exchange 网络服务,允许我向我的 Microsoft Outlook 帐户发送和接收数据。

我正在尝试在我的个人资料下获取已保存的联系人信息,然后以与网页上的 Microsoft Outlook 2013 桌面应用程序类似的格式显示此信息。

不幸的是,我注意到,我允许 Outlook 为我自动完成的任何电子邮件(即识别我开始输入的电子邮件地址在我的地址簿中,然后按 Enter 键选择建议的电子邮件),字符串值 I返回我的网页似乎是文件夹根 url 而不是电子邮件值本身。

即。 “/o=ParentFolder/ou=Group1/cn=Recipients/cn=address1”而不是“address1@email.co.uk”

我的问题是,有没有办法总是返回实际的电子邮件值,无论是否使用了自动完成功能,或者我可以使用另一个函数来允许我向下发送根值并获取相应的电子邮件字符串?

谢谢

【问题讨论】:

    标签: asp.net-mvc outlook exchangewebservices


    【解决方案1】:

    这是"EX" 类型的实际电子邮件地址(而不是"SMTP")。您是否将 GAL 用户添加到联系人文件夹?您将需要Email1OriginalDisplayName 属性(DASL 名称http://schemas.microsoft.com/mapi/id/{00062004-0000-0000-C000-000000000046}/8084001F)。您应该能够使用 EWS 检索它。看看OutlookSpy的联系方式(我是作者)——点击IMessage按钮。

    【讨论】:

      【解决方案2】:

      花了一天时间尝试使用几乎所有描述的方法检索Email1OriginalDisplayName,但没有成功,我尝试了这种方法并且它成功了。所以我觉得有必要通过包含一个为我完成的vb.net 代码 sn-p 来进一步澄清它。

      Dim PropAccessor As Microsoft.Office.Interop.Outlook.PropertyAccessor = oContact.PropertyAccessor
      SMTPaddr = PropAccessor.GetProperty("http://schemas.microsoft.com/mapi/id/{00062004-0000-0000-C000-000000000046}/8084001F")
      

      其中oContactoutlook.contactItemSMTPaddr 是字符串。

      我花了 5 个小时的研究才得到这个答案 - 这是唯一真正有效的答案。

      【讨论】:

        猜你喜欢
        • 2012-06-24
        • 2018-03-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多