Posted by zeemalik on February 18, 2009
Problem: The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.7.0 Must issue a STARTTLS command first. c25sm1228430ika.11
Solution:
Public Shared Sub SendEmail()
Dim Message As New Net.Mail.MailMessage()
Dim FromEmail As New Net.Mail.MailAddress(“From Email Address”)
Message.From = FromEmail
Message.To.Add(“To Email Address”)
Message.Subject = “Subject of the Email”
Message.Body = “Body of the Email”
‘Message.SubjectEncoding = System.Text.Encoding.UTF8
‘Message.BodyEncoding = System.Text.Encoding.UTF8
‘Message.IsBodyHtml = False
‘Message.Priority = Net.Mail.MailPriority.High
Dim SmtpClient As New Net.Mail.SmtpClient(“smtp.YourEmailServer.com”, PortNo eg: 587 for gmail )
SmtpClient.EnableSsl = True
’smtp.DeliveryMethod = Net.Mail.SmtpDeliveryMethod.Network
’smtp.UseDefaultCredentials = False
SmtpClient.Credentials = New Net.NetworkCredential(“YourEmailAddress”, “YourEmailPassword”)
SmtpClient.Send(Message)
End Sub
Note: An important point to note is that you have to set the EnableSSl to True before you set the NetWork Credentials of your SMTP client.
Posted in Asp.net | 2 Comments »
Posted by zeemalik on November 27, 2007
If you are using AJAX then the only way i have found yet to give an alert to a user on return to the Asynchronous post back is to add an “end request” handler to the PageRequestManager.
In this way you can tell the request manager to run a javascript function on returning from a Asynchronous post back event of AJAX.
Code for doing this is :
function load()
{
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
}
where “EndRequestHandler” will be the name of your javascript function you want to call.
Call the above function in Onload event of <body> tag:
<body onload=”load()”>
function EndRequestHandler()
{
alert(“You record has been saved successfully”);
}
Now If you want to give a different message based on your logic in server side code (code behind) then you can use a server side Hidden Field:
<input id=”hdnValue” type=”hidden” runat=”server” value=”" />
Set its value in server side code on Asychronous Post Back:
Protected Sub btn_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnCreateSample.Click
If condition Then
hdnValue.value = “do this”
Else
hdnValue.value = “do that”
End If
End Sub
Now you can check the value of this Hidden Field in your Client Side EndRequestHandler function and give a different alert to user based on its value:
function EndRequestHandler()
{
if (document.getElementById(‘<%= hdnValue.ClientID %>’).value == “do this”)
{
alert(“You record has been saved successfully”);
}
else
{
alert(“There is an error”);
}
}
Posted in AJAX, Asp.net, Asychronous post back, Javascript | Tagged: AJAX, Asp.net, Asynchronous post back, Client side scripting, EndRequestHandler, Javascript, UpdatePanel | 25 Comments »