当我引用该类发送电子邮件时,我收到以下错误。
“System.Net.Security,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”
我正在使用 Visual Studio 2017 ver 15.6.6, .Net 4.702556和 MailKit 2.0.3
我试过smtp.live.com,smtp.outlook.com,smtp.office365.com,smtp.gmail.com(带gmail地址)和outlook.office365.com
有谁知道为什么会出现这个错误以及我可以做些什么来摆脱它?
由于
using MailKit.Net.Smtp;
using MimeKit;
namespace Water_Dewater
{
public class AlarmMessageNotifications
{
public static void AlarmEmail()
{
var alert = new MimeMessage();
alert.From.Add(new MailboxAddress("****@hotmail.com"));
alert.To.Add(new MailboxAddress("****@hotmail.com"));
alert.Importance = MessageImportance.High;
alert.Subject = "test";
alert.Body = new TextPart("plain")
{
Text = "testing"
};
using (var client = new SmtpClient())
{
client.ServerCertificateValidationCallback = (s, c, h, e) => true;
client.Connect("outlook.office365.com", 587, true);
client.Authenticate("****@hotmail.com", "****");
client.Send(alert);
client.Disconnect(true);
}
}
}
}
答案 0 :(得分:0)
MailKit 2.0.3依赖项需要 System.Net.Security(> = 4.3.0),但是当您在Creators Update(10; Build 15063)和Min版本上定位应用时(10.0; Build 10240),UWP应用程序使用System.Net.Security,Version = 4.0.0.0,它不满足要求。
因此,请尝试更改应用目标版本和最低版本以使用MailKit Nuget。
作为建议,自Fall Creators Update(build 16299)以来,UWP支持.Net标准2.0。您可以尝试在Fall Creators Update(build 16299)上定位您的应用程序,并将Min版本build 16299设置为使用MailKit v2.0.3。