EmailManager 邮件正文被截断

EmailManager message body getting truncated

我正尝试在 Windows Phone 10.

上使用 C# 在 UWP 中发送电子邮件

我正在尝试发送一封正文为正文的电子邮件。但是,我注意到它被截断了。

我将代码简化为以下,仍然可以看到问题:

    Windows.ApplicationModel.Email.EmailMessage email = new Windows.ApplicationModel.Email.EmailMessage();

email.Body = "";

for(int i =0; i <240; i++)
{
    email.Body += i.ToString("D3");
    email.Body += Environment.NewLine;
}

await Windows.ApplicationModel.Email.EmailManager.ShowComposeNewEmailAsync(email);

在 运行 上面的代码之后,电子邮件编辑器出现了,这是正文的结尾

228

229

2

  1. 我可以在电子邮件编辑器的正文末尾添加更多文本,并且文本在电子邮件中正确发送。所以这似乎不是电子邮件编辑器的问题。

  2. 我在调试器中查看 email.Body,它显示了预期长度的未截断文本(直到 239,长度为 1200),但在电子邮件编辑器中,它显示了截断的文本。

我无法将此内容作为附件发送,所以我需要弄清楚如何将此内容作为内容发送。

有谁知道为什么电子邮件正文被截断了。

Does anyone know why the email body is being truncated

由于使用 mailto: 协议(参见 Effective maximum mailto: body lengths),此 API 也对 Body 部分的最大字符数有限制,此行为与 API和电子邮件客户端

这是我的测试结果:

邮寄地址:&正文部分:

  • 2013 个字符 - Outlook 2016
  • 2013 个字符 - Win10 应用程序:邮件

EmailMessage.Body:

  • 2070 个字符 - Outlook 2016
  • 2070 个字符 - Win10 应用程序:邮件

您的方案的可能方法是将您的电子邮件信息发送到远程 API 并发送您的电子邮件,而不是在 UWP 应用程序中执行。