Asp.Net 2.0 Beta2 中发送电子邮件的简单测试
最近正在学习Net 2.0 Beta2 ,发现发送电子邮件的方法与1.1中不同,今天自己试着做个测试看看,结果没有成功,于是在网上查找了一篇文章参考了一下,发现基本上是一模一样的,无非就是语言不同,但是就是有错误,经过试探的学习,发现加上 UseDefaultCredentials 属性就可以了。
以下是我的asp.net vb code:
有一个奇怪的现象,以上代码我测试可以成功的发送邮件,但是当我换用其他信箱测试就出现如下错误:
System.Net.Mail.SmtpException: 不允许使用邮箱名称。 服务器响应为: You are not authorized to send mail as>, authentication is required 在 System.Net.Mail.MailCommand.CheckResponse(SmtpStatusCode statusCode, String response) 在 System.Net.Mail.MailCommand.Send(SmtpConnection conn, Byte[] command, String from) 在 System.Net.Mail.SmtpTransport.SendMail(MailAddress from, MailAddressCollection recipients, SmtpFailedRecipientException& exception) 在 System.Net.Mail.SmtpClient.Send(MailMessage message) 在 _Default.Page_Load(Object sender, EventArgs e) 位置 C:\WRR\Default.aspx.vb:行号 16
请高手指教。
以下是我的asp.net vb code:
1
Imports System.Net.Mail
2
3
Partial Class _Default
4
Inherits System.Web.UI.Page
5
6
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
7
Try
8
Dim message As Net.Mail.MailMessage = New Net.Mail.MailMessage("kandy@263.net", "kandy@263.net")
9
Dim smtp As Net.Mail.SmtpClient = New Net.Mail.SmtpClient("smtp.263.net")
10
Dim nc As Net.NetworkCredential = New Net.NetworkCredential("MyUserName", "MyPassword")
11
12
message.Subject = "hello subject" & Date.Now.ToString
13
message.Body = "hello body"
14
smtp.Credentials = nc
15
smtp.UseDefaultCredentials = False
16
smtp.Send(message)
17
Catch ex As Exception
18
Response.Write(ex.ToString)
19
End Try
20
21
End Sub
22
End Class
Imports System.Net.Mail2

3
Partial Class _Default4
Inherits System.Web.UI.Page5

6
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load7
Try8
Dim message As Net.Mail.MailMessage = New Net.Mail.MailMessage("kandy@263.net", "kandy@263.net")9
Dim smtp As Net.Mail.SmtpClient = New Net.Mail.SmtpClient("smtp.263.net")10
Dim nc As Net.NetworkCredential = New Net.NetworkCredential("MyUserName", "MyPassword")11

12
message.Subject = "hello subject" & Date.Now.ToString13
message.Body = "hello body"14
smtp.Credentials = nc15
smtp.UseDefaultCredentials = False16
smtp.Send(message)17
Catch ex As Exception18
Response.Write(ex.ToString)19
End Try20

21
End Sub22
End Class有一个奇怪的现象,以上代码我测试可以成功的发送邮件,但是当我换用其他信箱测试就出现如下错误:
System.Net.Mail.SmtpException: 不允许使用邮箱名称。 服务器响应为: You are not authorized to send mail as
请高手指教。

Partial
浙公网安备 33010602011771号