Solved

how can i Run-once code from asp.net web service without calling the function from on_start?

Posted on 2009-06-26
1
451 Views
Last Modified: 2012-05-07
Here i am calling the SendMails() event from onstart event. while i am adding this one to web service taking more time to start the webservice.

now i want to call the sendmail event only once after the web service started.

or is any other method to send the mails other than using webservice.
Imports System.ServiceProcess
Imports System.Data.SqlClient
Imports System.Web.Mail
 
Public Class service1
    Inherits System.ServiceProcess.ServiceBase
	
	Dim sql As String
 
    Dim MyCon As SqlConnection
    Dim MyCmd As SqlCommand
    Dim MyRd As SqlDataReader
 
    Public conStr As String = "connection string"
 
    Protected Overrides Sub OnStart(ByVal args() As String)
        SendMails()
    End Sub
 
    Protected Overrides Sub OnStop()
 
    End Sub
 
    Public Function SendMails()
        Dim sno As Int64
        Dim strMailBdy As String
        Dim msgMail As MailMessage
        Dim strAryEmail(5000) As String
        Try
            sql = "select Email from TUser where Sno between 1 and 50000"
            MyCon = New SqlConnection(conStr)
            MyCon.Open()
            MyCmd = New SqlCommand(sql, MyCon)
            MyRd = MyCmd.ExecuteReader
            sno = 0
            While MyRd.Read
                strAryEmail(sno) = MyRd("Email")
                sno = sno + 1
                If sno > 4999 Then
                    ReDim Preserve strAryEmail(sno + 1)
                End If
            End While
            MyRd.Close()
            MyCmd = Nothing
            MyCon.Close()
 
            Dim intCustLen As Int64
            intCustLen = sno - 1
 
            For sno = 0 To intCustLen Step 1
                If strAryEmail(sno).ToString <> "" Then
            
                    msgMail = New MailMessage
                    msgMail.To = strAryEmail(sno).ToString.Trim
                    msgMail.From = "From EmailID"
                    msgMail.Subject = "Subject"
                    msgMail.Body = "Email Body"
                    msgMail.BodyFormat = MailFormat.Html
                    msgMail.Priority = MailPriority.Normal
					
                    Try
                        SmtpMail.Send(msgMail)
                    Catch ex As Exception
 
                    End Try
                    System.Threading.Thread.Sleep(2000)
                End If
            Next
        Catch ex As Exception
            If MyCon.State = ConnectionState.Open Then MyCon.Close()
        End Try
    End Function
 
End Class

Open in new window

0
Comment
Question by:Ranjith_MCAD
[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
1 Comment
 
LVL 11

Accepted Solution

by:
Salim Fayad earned 500 total points
ID: 24727251
You can send emails from your web application directly without passing thrugh a webservice. But if you do want to do it from your webservice, you can write a function in your webserice that you call it from your web application.
0

Featured Post

Revamp Your Training Process

Drastically shorten your training time with WalkMe's advanced online training solution that Guides your trainees to action.

Question has a verified solution.

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

I recently went through the process of creating a Calendar Control of events with the basis of using a database to keep track of the dates that are selectable, one requirement was to have the selected date pop-up in a simple lightbox.  At first this…
IntroductionWhile developing web applications, a single page might contain many regions and each region might contain many number of controls with the capability to perform  postback. Many times you might need to perform some action on an ASP.NET po…
Michael from AdRem Software explains how to view the most utilized and worst performing nodes in your network, by accessing the Top Charts view in NetCrunch network monitor (https://www.adremsoft.com/). Top Charts is a view in which you can set seve…
This tutorial will teach you the special effect of super speed similar to the fictional character Wally West aka "The Flash" After Shake : http://www.videocopilot.net/presets/after_shake/ All lightning effects with instructions : http://www.mediaf…

617 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