1

我的问题很简单。我需要发送带有我在 C# 中生成的收件人和附件的电子邮件。

1方法:

var mailto = new Uri("mailto:?to=" + emails + "&subject=" + subject + "&body=" + body);
        await Windows.System.Launcher.LaunchUriAsync(mailto);

没关系,但我无法添加附件(仅限收件人)

2方法:

使用DataTransferManager. 这很酷,但我无法添加收件人。

有什么方法可以解决我的问题吗?

4

2 回答 2

1

您无法避免已经尝试过的两种方法的局限性:

  • mailto:协议不允许添加附件。您还取决于用户为处理此协议而配置的应用程序。它可能根本不起作用。
  • 您不能设置共享的收件人。此外,您无法确定用户将选择哪个应用程序作为共享目标。他可能会在社交网络上发布内容或以其他方式使用它。

我认为安东尼奥已经建议使用网络服务来完成这项工作是从 Windows 应用商店应用程序以非交互方式发送电子邮件的最佳方式。

还有一个第三方 SMTP 组件可用于发送电子邮件。这种方法的缺点是您需要用户配置 SMTP 设置才能使其工作。

于 2013-01-22T05:51:40.420 回答
0

没有(简单的)方法可以从 Modern UI 应用程序发送电子邮件,您唯一能做的就是共享要发送的内容,然后用户将选择他或她是否不会使用邮件客户端并在邮件客户端中选择收件人。

出于某种原因,Microsoft 没有将其包含在 WinRT API 中,IMO 肯定需要它,例如现代 UI 中的替代电子邮件客户端。

更难的方法是实现 smtp 客户端,或者更容易构建某种将发送邮件的 Web 服务,或者使用现有的服务,如mandrill.com

于 2013-01-21T23:46:59.487 回答