c# - 如何在不使用电子邮件界面但使用 Yahoo SMTP 的情况下从 UWP/Windows Store 应用程序(2019)发送点击事件的自动电子邮件
问题描述
尝试使用 yahoo smtp 从 UWP/Windows Store (2019) 应用程序发送自动电子邮件,并且在单击事件时不弹出电子邮件界面。
- 有没有人有这个的代码?我将使用静态电子邮件地址。
- 无论应用程序安装在何处,即多台 PC,这都需要工作。
我已经使用它尝试了 LightBuzz NuGet Package,但它仍然不发送任何电子邮件,应用程序也不会崩溃或给出错误:
using LightBuzz.SMTP;
// The below call to SendMailAsync is used in a click event
SendMailAsync();
//
public async static void SendMailAsync()
{
var server = "smtp.mail.yahoo.com";
var port = 587;
var ssl = true;
var username = "myemail@yahoo.com";
var password = "myPassword";
using (var client = new SmtpClient(server, port, ssl, username, password))
{
var emailMessage = new EmailMessage();
emailMessage.To.Add(new EmailRecipient("myemail@yahoo.com"));
emailMessage.CC.Add(new EmailRecipient(""));
emailMessage.Bcc.Add(new EmailRecipient(""));
emailMessage.Subject = "My Subject";
emailMessage.Body = "My Msg.";
await client.SendMailAsync(emailMessage);
}
}
我希望电子邮件能到达我的雅虎邮箱。但是什么都没有。
解决方案
我检查了通用System.Net.Mail.SmtpClient
类,它在 UWP 中不受支持。请参阅SmtpClient 的 .NET API 浏览器。
但我在System.Net.Mail.SmtpClient文档的重要部分找到了一些有用的信息。
github 上的dotnet/platform-compat建议您使用MailKit。它是一个开源库。它支持 .NET 4.5、.NETStandard 1.3/1.6/2.0、Windows Universal 8.1、Xamarin.Android 和 Xamarin.iOS。
所以,你可以在 UWP 中使用它。我已经安装了 nuget 包来测试演示代码。它适用于 UWP。你可以试试。
推荐阅读
- javascript - When mobile is rotated, width and height are swapped in get User Media Api JavaScript
- javascript - Javascript:如何在重新分配后保留对对象中断的引用?
- ios - iOS ble 开发
- mongodb - 如何在 MongoDB 共享集群中分发 GridFS fs.chunks
- python - Concatenate characters of string values to the same column values
- sql-server - 如何在平面文件中用空格替换文本字段中的换行符和段落标记?
- terraform - How to use format for list of strings in terraform 0.12.20?
- angular - Angular Ivy ignoring entryComponents setting
- java - 如何在 CONFUSING 初学者 Java 问题中找到输出
- python - Python3 上的 tkinter 问题:发生在 Mac OS X 上,而不是 Windows 10