?
Solved

asp.net vb email

Posted on 2009-07-12
3
Medium Priority
?
562 Views
Last Modified: 2012-05-07
Hello,
I have email script, and it works fine in the sample page.
However, if I copy and paste the script in other page, it stop working.
It doesn't give me any error message, and I have no idea what's causing it.
IDs are the same in both pages.
May be it's conflicting with other script in code behind VB.

Any idea?

Thank you.
Protected Sub btnSend_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSend.Click
 
        Dim mailMessage As New System.Net.Mail.MailMessage
        mailMessage.From = New System.Net.Mail.MailAddress("test@test.com")
        mailMessage.To.Add(New MailAddress("test@test.com"))
 
        mailMessage.Subject = "I assigned you a job"
 
        Dim plainTextView As System.Net.Mail.AlternateView = System.Net.Mail.AlternateView.CreateAlternateViewFromString("text/plain", Nothing, "text/plain")
        Dim htmlView As System.Net.Mail.AlternateView = System.Net.Mail.AlternateView.CreateAlternateViewFromString("text/html", Nothing, "text/html")
        mailMessage.AlternateViews.Add(plainTextView)
        mailMessage.AlternateViews.Add(htmlView)
 
        Dim smtpClient As New SmtpClient()
        Dim userState As Object = mailMessage
 
        AddHandler smtpClient.SendCompleted, AddressOf SmtpClient_OnCompleted
 
        Try
            smtpClient.SendAsync(mailMessage, userState)
        Catch recExc As System.Net.Mail.SmtpFailedRecipientsException
            For receipient = 0 To recExc.InnerExceptions.Length
                Dim statusCode As System.Net.Mail.SmtpStatusCode
                statusCode = recExc.InnerExceptions(receipient).StatusCode
 
                If (statusCode = SmtpStatusCode.MailboxBusy) Or (statusCode = SmtpStatusCode.MailboxUnavailable) Then
                    System.Threading.Thread.Sleep(5000)
                    smtpClient.SendAsync(mailMessage, userState)
 
                Else
                End If
            Next
        Catch smtpExc As System.Net.Mail.SmtpException
        Catch ex As Exception
        End Try
    End Sub

Open in new window

0
Comment
Question by:jtuttle99
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
3 Comments
 
LVL 41

Accepted Solution

by:
guru_sami earned 2000 total points
ID: 24836350
Did you try setting breakpoints and see if it is not hitting any Catch?
set breakpoints at
Try and all Catch and then debug ....Or add
Respose.Write(smtpExc.ToString) and
Respose.Write(ex.ToString) to your ending catch blocks..
0
 

Author Comment

by:jtuttle99
ID: 24836396
Hello, I did response.Write and got following message.

System.Net.Mail.SmtpException: Failure sending mail. ---> System.InvalidOperationException: Asynchronous operations are not allowed in this context. Page starting an asynchronous operation has to have the Async attribute set to true and an asynchronous operation can only be started on a page prior to PreRenderComplete event. at System.Web.AspNetSynchronizationContext.OperationStarted() at System.Net.Mail.SmtpClient.SendAsync(MailMessage message, Object userToken) --- End of inner exception stack trace --- at System.Net.Mail.SmtpClient.SendAsync(MailMessage message, Object userToken) at maintain_employee_Default.SendMail() in C:\Documents and Settings\shinyat\My Documents\Visual Studio 2008\WebSites\greenlake\maintain\employee\blog_emp.aspx.vb:line 363
0
 

Author Closing Comment

by:jtuttle99
ID: 31602634
And I added Async="true" in the page, and it worked!
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Lots of people ask this question on how to extend the “MembershipProvider” to make use of custom authentication like using existing database or make use of some other way of authentication. Many blogs show you how to extend the membership provider c…
Just a quick little trick I learned recently.  Now that I'm using jQuery with abandon in my asp.net applications, I have grown tired of the following syntax:      (CODE) I suppose it just offends my sense of decency to put inline VBScript on a…
NetCrunch network monitor is a highly extensive platform for network monitoring and alert generation. In this video you'll see a live demo of NetCrunch with most notable features explained in a walk-through manner. You'll also get to know the philos…
In this video, Percona Solutions Engineer Barrett Chambers discusses some of the basic syntax differences between MySQL and MongoDB. To learn more check out our webinar on MongoDB administration for MySQL DBA: https://www.percona.com/resources/we…
Suggested Courses
Course of the Month9 days, 14 hours left to enroll

762 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question