【发布时间】:2017-04-17 13:16:24
【问题描述】:
我有一个简单的目标,即打开一封电子邮件(在 Outlook 2016 中),其中为来自 Windows 10 UWP 应用的多个收件人配置了收件人字段。
我尝试了 3 种方法
1) 推荐的方式,如 UWP 示例中的演示,使用 EmailMessage
var emailMessage = new Windows.ApplicationModel.Email.EmailMessage();
emailMessage.Body = "";
foreach (Person p in SelectedPeople)
{
if (string.IsNullOrEmpty(p.Email) == false)
{
var emailRecipient = new Windows.ApplicationModel.Email.EmailRecipient(p.Email);
emailMessage.To.Add(emailRecipient);
}
}
await Windows.ApplicationModel.Email.EmailManager.ShowComposeNewEmailAsync(emailMessage);
这会导致一个电子邮件窗口,其中收件人用逗号分隔,然后无法解析。设置允许逗号分隔符的选项似乎是一个答案,但事实证明,除非也有空间来分隔,否则它不起作用?
2) 构建一个 mailto:user1@work.com;user2@work.com URI 并启动它。
var uri = new Uri("mailto:user1@work.com;user2@work.com");
var success = await Windows.System.Launcher.LaunchUriAsync(uri);
但是,尝试使用多个配方创建 URI 会引发 URI 主机名无效的异常
3) 同上,但使用方案 mailto:?To=user1@work.com;user2@work.com
这被正确解析为 URI,但在启动时 Outlook 显示一个空的收件人列表。通过测试,使用 CC= 确实会在 CC 字段中显示收件人
所以,现在我想知道如何将电子邮件发送给商店应用的多个收件人?
【问题讨论】:
-
有人认识这个问题吗?
-
同样的问题,一年后微软没有人回答这个问题?