EmailManager邮件正文被截断

时间:2016-02-13 16:10:19

标签: c# win-universal-app windows-10-mobile

我正在尝试使用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),但在电子邮件编辑器中显示截断的文本。

  3. 我无法将此内容作为附件发送,因此我需要弄清楚如何将其作为内容发送。

    有谁知道邮件正文被截断的原因。

1 个答案:

答案 0 :(得分:1)

  

有谁知道邮件正文被截断的原因

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

这是我的测试结果:

mailto:&amp; body section:

  • 2013字符 - Outlook 2016
  • 2013字符 - Win10 App:Mail

<强> EmailMessage.Body:

  • 2070个字符 - Outlook 2016
  • 2070个字符 - Win10 App:Mail

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