如何解决值不能为null在asp.net mvc中发送hotmail或Outlook电子邮件时的参数名称innerstream
我正在使用带有smtp的hotmail或Outlook电子邮件发送电子邮件:asp.net mvc中的smtp-mail.outlook.com。它在本地工作正常,但是在尝试实时发送时会出现此错误“值不能为空。参数名称innerstream”。请提出任何解决方案。感谢adavace。 下面是我的代码,在本地代码上可以完美运行。
------------------------------------这是我的代码------- ------------------
公共静态字符串SendMail(字符串来自,字符串SenderName,字符串[]收件人,字符串主题,字符串主体,字符串_smtp,字符串_autEmail,字符串_autPass,字符串ReplyTo =“”) {
try
{
ComponentInfo.SetLicense("EN-2020Apr13-bFAW7hA9RPNwz2EimPfupBFO+Zvn7eAJFmwMDry8bw3XBOwrbN8zT5uOUMlwhwErECColZkcu0J9Nnp+k91PYjA+yVw==A");
MailMessage message = new MailMessage();
message.From.Add(new MailAddress(from,SenderName));
foreach(var to in recipient)
{
message.To.Add(new MailAddress(to.Trim()));
}
if (!string.IsNullOrEmpty(ReplyTo))
{
message.To.Add(new MailAddress(ReplyTo.Trim()));
}
message.Subject = subject;
message.BodyHtml = body;
RemoteCertificateValidationCallback validationDelegate =
(object sender,X509Certificate certificate,X509Chain chain,SslPolicyErrors errors) =>
{
if (errors == SslPolicyErrors.None || errors == SslPolicyErrors.RemoteCertificateNameMismatch)
{
return true;
}
else
{
return false;
}
};
// Create new SmtpClient and specify host,port,security and certificate validation callback.
using (SmtpClient smtp = new SmtpClient(
_smtp,465,ConnectionSecurity.Auto,validationDelegate))
{
smtp.Connect();
smtp.Authenticate(_autEmail,_autPass,SmtpAuthentication.Login);
smtp.SendMessage(message);
return "1";
}
}
catch (Exception ex)
{
return ex.Message;
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。