相关疑难解决方法(0)

Exchange Web Services(EWS)API"To"别名标头

我有一个收件箱设置作为交换, hello@mycompany.com

此外,还有一个别名news@mycompany.com,因此所有发送到该news地址的电子邮件最终都会出现在hello收件箱中.

理想情况下,我希望能够使用EWS告知发送电子邮件的别名.

当我向news@mycompany.comMicrosoft Outlook 发送电子邮件并检查邮件的Internet标头时,To:标题会读取To: Hello <news@mycompany.com>我想要查看的内容.

但是,使用EWS时,当我查看邮件的ToRecipients属性时,报告的电子邮件地址始终是主SMTP地址的电子邮件地址.此外,Webservices.Data.Item 的InternetMessageHeaders属性不包含该To:属性.我似乎也看不到使用EWSEditor检查消息的所有属性的正确地址.

这个论坛帖子的答案似乎表明,

...有关邮件发送到的实际电子邮件地址的信息存储在收件人集合中,您无法在EWS中访问(在exportmessage之外)...

我将如何以编程方式执行此操作,以便找到正确的To:地址?

exchange-server exchange-server-2007 exchangewebservices ews-managed-api

7
推荐指数
1
解决办法
4745
查看次数

使用 Microsoft Graph SDK 在统一列表中获取所有电子邮件标头?

我正在使用 Microsoft Graph 从特定帐户的收件箱获取信息。该帐户有多个电子邮件别名。但是,即使在我$select查询该InternetMessageHeaders属性后,它也不包含电子邮件发送到的别名。

我发现,如果我还使用 选择并扩展查询singleValueExtendedProperties,我会得到我需要的内容,但现在我丢失了 中存在的一些标头InternetMessageHeaders。它还以一大堆文本的形式返回,看起来不太直接而难以解析。如果我能以某种方式将这个文本块解析为键:值映射,我可以合并这两个值并收工,但我不知道这是否可能。我希望它可以用multiValueExtendedProperties,但我不认为这是它的预期用途。

我正在使用 Microsoft Graph 的 SDK for .NET(当前使用 4.0.0),这是我迄今为止获取所有电子邮件的方法:

public async Task<List<Message>> PollEmails() {
    var completeList = new List<Message>();

    var messagesRequest = await graphClient.
        Users[GraphOptions.AccountId]                                               // Email account ID
            .Messages                                                               // All Emails
            .Request()                                                              // Create request w/ authorization & headers needed
            .Select("internetMessageHeaders,singleValueExtendedProperties")         // Additionally, select the email's headers
            .Expand("singleValueExtendedProperties($filter=id eq 'String 0x007D')") // Without this filter, we cannot tell which email alias was …
Run Code Online (Sandbox Code Playgroud)

c# microsoft-graph-sdks microsoft-graph-mail .net-5 microsoft-graph-api

1
推荐指数
1
解决办法
2294
查看次数