Send email in Asp.Net 2.0

S

shapper

Hello,

I am trying to send an email using Asp.Net 2.0.

I am getting the following error:

System.Net.Mail.SmtpFailedRecipientException: Mailbox unavailable. The
server response was: No such user here at
System.Net.Mail.SmtpTransport.SendMail(MailAddress sender,
MailAddressCollection recipients, String deliveryNotify,
SmtpFailedRecipientException& exception) at
System.Net.Mail.SmtpClient.Send(MailMessage message)

The strange thing is that the email box really exists.

My code is as follows:

1 ' Define user profile
2 Dim userProfile As ProfileCommon =
Profile.GetProfile(tbUsernameRecover.Text)
3
4 ' Define user name
5 Dim name As String = userProfile.Personal.Name
6
7 ' Define user email address
8 Dim email As String = user.Email
9
10 ' Reset user password
11 Dim newPassword As String = user.ResetPassword()
12
13 ' Create new mail message
14 Dim message As New System.Net.Mail.MailMessage
15
16 ' Define mail message properties
17 With message
18
19 ' Define mail message properties
20 .Body = Resources.Email.PasswordReset_Body & newPassword
21 .From = New
System.Net.Mail.MailAddress(ConfigurationManager.AppSettings("Email.NoReply.Address"),
ConfigurationManager.AppSettings("Email.NoReply.Name"))
22 .IsBodyHtml = False
23 .Subject = Resources.Email.PasswordReset_Subject
24 .To.Add(New System.Net.Mail.MailAddress(email, name))
25
26 End With
27
28 ' Create and define the SMTP client
29 Dim smtpClient As New System.Net.Mail.SmtpClient
30
31 ' Get mailSettings section from web.config
32 Dim mailSettings As
System.Net.Configuration.MailSettingsSectionGroup =
ConfigurationManager.GetSection("system.net/mailSettings")
33
34 ' Define smtp client properties
35 If Not mailSettings Is Nothing Then
36 With smtpClient
37 .Port = mailSettings.Smtp.Network.Port
38 .Host = mailSettings.Smtp.Network.Host
39 .Credentials = New
System.Net.NetworkCredential(mailSettings.Smtp.Network.UserName,
mailSettings.Smtp.Network.Password)
40 End With
41 End If
42
43 ' Send the mail message
44 Try
45
46 ' Send the mail message
47 smtpClient.Send(message)
48
49 Catch ex As Exception
50
51 Response.Write(ex.ToString)
52
53 End Try

And in my web.config file I have:

<system.net>
<mailSettings>
<smtp deliveryMethod="Network">
<network defaultCredentials="true"
host="mail.mydomain.com" password="pass" port="25"
userName="(e-mail address removed)"/>
</smtp>
</mailSettings>
</system.net>

This email account exists and it is working!

Could someone tell me what am I doing wrong here?

Thanks,

Miguel
 
M

Mark Rae

I am getting the following error:

System.Net.Mail.SmtpFailedRecipientException: Mailbox unavailable. The
server response was: No such user here at
System.Net.Mail.SmtpTransport.SendMail(MailAddress sender,
MailAddressCollection recipients, String deliveryNotify,
SmtpFailedRecipientException& exception) at
System.Net.Mail.SmtpClient.Send(MailMessage message)

http://www.aspnix.com/forums/thread/9158.aspx
 
S

shapper

I have been trying to solve this and it seems that mailSettings in line
32 is an empty object so lines 36 to 40 are not running.

Any idea?

Thanks,

Miguel
 
S

shapper

Hi,

As far as I understood that article I am not doing anything wrong:

1. The from email address and the SMTP email address defined on the
web.config both exist.
2. In my web.config SMTP configuration I have the username and password
so SMTP authentication is possible.

What could be wrong then?

Thanks,
Miguel
 
S

sloan

There is a thing called "authentication mode" for email sending (smtp).

None
Basic
SSL

It looks like you're using userName and password.

<system.net>

<mailSettings>
<smtp from="(e-mail address removed)">
<network host="smtp-server.rr.com" password=""
userName="(e-mail address removed)" />
</smtp>
</mailSettings>

</system.net>



I don't know what the <tag> is for using SSL, maybe research that. Or maybe
remove userName and password attributes to kick in "None". (I'm
guessing/experimenting here, I don't know which combo's affect the
authentication mode).



I actually have a better solution at:



2/8/2006
Smarter Email/Smtp setup with DotNet Configuration Sections (1.1 and 2.0)
http://sholliday.spaces.live.com/blog/
 
S

shapper

I changed defaultCredentials="true" to defaultCredentials="false" and
now it is working fine.

Thanks,
Miguel
 
S

sloan

Ok...

My guess would be that ... setting that to false.... reverts it back to NONE
authentication mode.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top