如何用VB.Net收发邮件在Identity2.0里面封装了IIdentityMessageService接口,可以用来发送接收邮件 。
看看
Imports System.Threading.Tasks
Imports System.Security.Claims
Imports Microsoft.AspNet.Identity
Imports Microsoft.AspNet.Identity.EntityFramework
Imports Microsoft.AspNet.Identity.Owin
Imports Microsoft.Owin
Imports Microsoft.Owin.Security
public function SendAsync(message as IdentityMessage) as task
dim credentialUserName = "邮箱登录名"
dimsentFrom = "你的邮箱地址"
dim pwd= "邮箱登录密码";
dim client as new System.Net.Mail.SmtpClient("smtp服务器地址")
client.Port = 25'mtp邮件服务器端口
client.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network
client.UseDefaultCredentials = false
dim credentials as new System.Net.NetworkCredential(credentialUserName, pwd)
client.EnableSsl = true
client.Credentials = credentials
dim mail as new System.Net.Mail.MailMessage(sentFrom, message.Destination)
mail.Subject = message.Subject
mail.Body = message.Body
return client.SendMailAsync(mail)
end function
vb.net 请问SmtpClient发送邮件后, MailMessage是否自动释放?这段代码vbnetsmtp我执行无误vbnetsmtp , 不太清楚题主是如何异步发送vbnetsmtp的 , 题主也没给出错误究竟是什么,所以无从判断 。
只能说需要手动释放,或者用 message = Nothing 也可以释放 。
【针对问题补充的回答】
注释行已去掉 , 仍能正常运行,可能跟网络环境有关 。
另外不知题主 AddHandler client.SendCompleted, AddressOf SendCompletedCallback 这行中的回调函数 SendCompletedCallback 是怎么写的 , vbnetsmtp我写的是:
Private Function SendCompletedCallback(ByVal sender As Object, ByVal e As System.ComponentModel.AsyncCompletedEventArgs)
If e.Cancelled Then
REM 邮件发送被取消
ElseIf e.Error.ToString"" Then
REM 邮件发送失败
Else
REM 发送成功
End If
End Function
另外建议用 Try-Ctach-End Try 结构,并在释放前设置延时函数 。
网络邮件服务器列表SMTP服务器名称国内常用免费邮件POP3和SMTP设置邮箱Foxmial ,Outlook等客户端设置网易邮箱 POP3 和 SMTP 服务器地址设置如下:邮箱 POP3 服务器(端口110) SMTP 服务器(端口25) @163.com pop3.163.com smtp.163.com @126.com pop3.126.com smtp.126.com @netease.com pop.netease.com smtp.netease.com @yeah.net pop.yeah.net smtp.yeah.net 所有的SMTP服务器都需要身份验证 。Sina免费邮件服务器设置 收信(pop3)服务器:pop3.sina.com.cn发信(smtp)服务器:smtp.sina.com.cn请选择smtp服务器要求身份验证选项 Yahoo中国免费邮件服务器设置:接收邮件(POP3)服务器:pop.mail.yahoo.com.cn发送邮件(SMTP)服务器:smtp.mail.yahoo.com.cnYahoo免费邮件服务器设置:(把你的资料填成国外的)接收邮件(POP3)服务器:pop.mail.yahoo.com发送邮件(SMTP)服务器:smtp.mail.yahoo.com Gmail客户端:POP服务器:pop.gmail.com打开ssl端口995(注意,pop得默认端口是110,在这里要改成995)SMTP服务器:smtp.gmail.com smtp服务器需要身份验证开启ssl端口465或587帐户名:你得gmail用户名(包括 ‘@gmail.comusername@gmail.com)密码:你得gmail密码中华网 pop.china.comsmtp.china.com 搜狐 pop.sohu.com smtp.sohu.com163电子邮局 163.netsmtp.163.net 263电子邮局 263.net smtp.263.net QQ邮箱不提供POP3服务Hotmail邮箱不提供POP3和SMTP服务163.net收费邮箱popx.163vip.netsmtp.163vip.net
关于vb.net 发送邮件附件的问题,大家帮忙?。。?/h2>相当多的邮件服务器不支持大附件,一般为32MB,网易的是50MB 。参照链接:
所以发送失败未必是你代码的问题 。很有可能是你服务器的问题 。请找一个支持大附件的邮箱试一试 , 找不到的话看能不能把附件拆到32M以下 , 然后多次发送 。
推荐阅读
- postgre取前10条,pgsql取前10条数据
- 新公司erp系统的简单介绍
- u盘东西误删怎么恢复,u盘东西误删怎么恢复免费软件
- 55直播技巧男生,男主播怎么直播可以吸引人气
- go语言日志收集 go的日志库
- 电商如何搞气氛,营造电商氛围
- 虚拟机自动关机,虚拟机自动关机怎么解决
- 拜财神直播教程,拜财神视频
- go语言使用flink go语言使用redis