Convert Webpage to PDF
Here the some methods that will be help you.
There are number of ways to do...,
1) using ITextSharp
2) Make the webpage as Image and add it to PDF ( proposed by Charith - Thanks anyway)
Check the forums discussion here
3) Using some online tool like this HTML to PDF
4) If the User want a link on the webpage so if the user click the link , current page is converted to PDF.
Check this: http://www.pdfspot.com/
Thanks
Post Method - Example Code
Here is the Simple example.
P1.aspx
<form id="form1" runat="server" method ="post" action ="p2.aspx">
<div>
User : <asp:TextBox ID="txtName" runat="server"></asp:TextBox><br/>
Password : <asp:TextBox ID="txtPassword" runat="server"></asp:TextBox>
<asp:Button ID="btnSend" runat="server" Text="Send" PostBackUrl ="~/p2.aspx" />
</div>
</form>
So if you are going to use post method on form tag set method="post" and action="p2.aspx" ie: designation url to get the data of p1.aspx on p2.aspx.
P2.aspx
<form id="form1" runat="server">
<div>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><br />
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
</div>
</form>
protected void Page_Load(object sender, EventArgs e)
{
TextBox1.Text = Request.Form["txtName"].ToString ();
TextBox2.Text = Request.Form["txtPassword"].ToString ();
}
Finally on destination page
using Request.Form["yourcontrolid"] to get value of the control on p1.aspxConfigure the Google Map API key for Multiple domains
In my case i have two domains : Create a Google MAP API key for the Two Domains
Example:
So use this Javascript instead of your previous Javascript
<script type="text/javascript">
var strKey = "";
switch (window.location.host)
{
case 'domain1.com':
strKey = 'ABsdfQIAA34AArNH17caPfR3kIylWMznsdfh3xTfvmRwsdfsd6dRB3osdfVmrrtfPwNADfaZlxQgtqbBp4xswSjiA0KYuB2Y2ynaUQ';
break;
case 'domain2.au':
strKey = 'Agbs42BQIAdfsAAArNH17caPfdfdfR3kIylWMfsdznh3xRosdfqCxgZKzqbnVvUHRgAMBYHaL-QhSwZqznIVtPbMQt4wrboRbFET9LYQ';
break;
}
document.write('<'+'script src="http://maps.google.com/maps?file=api&v=2&key='
+ strKey + '" type="text/javascript">' + '<'+'/script>');
</script>
So try the above script - this will work for multiple domains.
Ref:
http://groups.google.com/group/google-maps-api/browse_thread/thread/3c300b5be6b5cad7/77037ee6035f2c84?lnk=gst&q=multiple+domains#77037ee6035f2c84
How to check the specific field in the row has contain null or value.
Good Morning after a month I spend the time to post the small tips who already known but i would like to share this post which everyone come to know.
Question : how to check the specific field in the row has contain null or value.
Normally we used to get the data from the DB using specific id for ex: get the specific user details using his userid. So it will return that row value. In that row some field may contain NULL value.
Here is the code to check the particular field contains value or null.
In my case I am getting the row from Database and assigned to the Datarow like this
Dim dr as DataRow dr = ds.Tables(0).Rows(0)
Here the dr contains the row data from this I am checking the field.
Datarow contains a method called IsNull to check whether the field has null or value.
EX:
if (dr.IsNull("fieldname")) then
' if the field contain null do the manipulation here
else
' the field cotains some value.
End if
the above code defines the Datarow contain a method called IsNull which is going to check the whether the specified fieldname has value or null as per we can manipulate it.
And also I am going to tell another tips which was pointed @ DotnetCurry.com here - thanks for that.
IE: if we are going to display user photo on Gridview where user have to upload his photo which will be an optional, User may or may not upload his photo, at that time the user who don't have photo on DB , the Gridview shows the cross mark image for that user. This is not good in practice from user point of view instead we have to show the default image for the user who don't have photo on DB.
Example:
on the HTML img tag write like this
< img src="Dynamic-imagename" onerror="this.src='../images/NoImageFound.jpg'" .. / >
This above tag will show the user photo who have photo on DB if there is no photo on DB for those it shows the default image specified on onerror event.
Read or Write Session value on HTTP Handler file (.ashx)
I noticed some post on forums how to get the Session value on (.ashx file). So here is the solution.
By Default if you use Session on handler, the session returns null value. You have to implement the interface to read or write session value on handler file. If there is a situation to read Session value on your Handler file implement IReadOnlySessionState.
When there is a case, you have to read or write session value in Handler file.
Implement IRequireSessionState.
Here is the code where i implement both IReadOnlySessionState and IRequireSessionState.
Example:
<%@ WebHandler Language="C#" Class="Handler" %>
using System;
using System.Web;
using System.Web.SessionState;
public class Handler : IHttpHandler , IReadOnlySessionState , IRequiresSessionState {
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/plain";
context.Response.Write("Hello World");
}
public bool IsReusable {
get {
return false;
}
}
}
Import XML file to Sql Server using SSIS
Today I am going to discuss about the SSIS (Sql server Integration Services) ie: how to Export the XML file to Sql Server with Column name and Data.
What is SSIS ?
- To solve complex busniess problems.
- sending and downloading files
- sending email messages in response to events
- Update Datawarehousing
- Cleaning and Data mining
- Managing Sql server data objects
Its the concept of ETL - ie. Extract - Transform - Load
Purpose:
1) Automate maintenance of sql server Database.
2) Update MultiDimensional Cube data as well.
I have the situation that xml file can be imported to the SQL server ie: i have the xml file look like this
<dataset> <items> <empid>1</empid> <empname>ela</empname> <empcity>madhurai</empcity> <empsalary>10000</empsalary> </items> <items> <empid>2</empid> <empname>arun</empname> <empcity>chennai</empcity> <empsalary>20000</empsalary> </items> <items> <empid>3</empid> <empname>kumar</empname> <empcity>bangalore</empcity> <empsalary>25000</empsalary> </items> </dataset>
I have convert this XML file to DB tables. It should be same schema , contraints, Relationship, trigger etc..
For this SSIS is a easy way to convert any XML , text , Word , Excel file to Sql Database.
So you have to choose Business Intelligence and Development Studio (BIDS) to do the task
There are three ways to create a packages.
1) SSIS Designer(BIDS - Business Inelligence Development Studio)
2) API Programming
3) Import and Export Wizard
Here I am using the BIDS its a Graphical tool to create a packages, withoud need to write single line of code.
Open the new Project on Sql Server Integration Services.
Here is the steps to follow.
1. Create a new SSIS project in VS2005
2. Create a new data flow task - Double-click on the added task
3. Drag "xml source" from toolbox into data flow panel,Double Click on the XML
DataSource - a window opens select the xml file, and then generate XSD schema if not.
4. You could drag a "SQL Server detination" to the panel as data destination, connect XML source and SQL Server Destination, and use a new table.
Suppose if you getting Package Validation Error - Use the "data conversion" component in a data flow.
There may be the Datatype can be mismatched on Output columns. so at that time you can directly change the Datatype follow the below steps.
1. Right click the XML source->Show Advanced editor->Input and Output properties
2. Expand inputname->External Columns->Column name
3. On right panel, try to change the Datatype directly.
OR you could use "data conversion" component to convert the field that does not have the proper data type.
Ref:
Validate Checkbox and Checkboxlist in easy way
Hi Good Evening Techies.
Validation Control for Checkbox and Checkboxlist
Alternatively Download the file here skmValidators.rar
AjaxHoverMenuExtender with ASP.NET
Place the ScriptManager on your page.
<ajax:ScriptManager ID="ScriptManager1" runat="server"> </ajax:ScriptManager>
Then Drag the Hyperlink and AjaxHoverMenuExtender on the Design page.
<asp:HyperLink ID="Hyperlink1" runat="server" Text="Session Mode" NavigateUrl="~/Description.aspx"></asp:HyperLink> <ajaxToolkit:HoverMenuExtender ID="hme2" runat="Server" TargetControlID="Hyperlink1" PopupControlID="Panel1" PopupPosition="Center" OffsetX="-25" OffsetY="15" />
TargetControlID - Specify the server ControlID where you going to show the popup text.
PopupControlId - Specify the ControlD which shows the popup while onmouseover of the
text of link.
PopupPosition - Center , Left , Right .
OffSetX , OffSetY - specify the X and Y position on that page according to the parent
Control.
<asp:Panel ID="Panel1" runat="server" Width="600px">
<asp:DataList ID="Dtl_Unit" CellPadding="1" CellSpacing="1"
ShowHeader="False" BorderWidth="0px"
runat="server" DataKeyField="ServicesSubId" DataSourceID="Sqd_Unit"
RepeatColumns="5">
<ItemTemplate>
<table border="0">
<tr>
<td>
<asp:HyperLink ID="Hyperlink2" runat="server"
NavigateUrl='<%#"Description.aspx?SId="+Eval("sessionmodeID") %>'
Text='<%#Eval("sessionmodeName")%>'></asp:HyperLink>
</td>
</tr>
</table>
</ItemTemplate>
<ItemStyle BorderWidth="0px" />
</asp:DataList>
<asp:SqlDataSource ID="Sqd_Unit" runat="server" ConnectionString="<%$
ConnectionStrings:ConnectionString %>"
SelectCommand="SELECT [sessionmodeID], [sessionmodeName] FROM
[SessionTable]">
</asp:SqlDataSource>
</asp:Panel>
Output:
Invalid postback or callback argument. Event validation is enabled using in configuration or <%@ Page EnableEventValidation="true" %> in a page.
When i faced this issue
I fixed it by putting my Databind code ie: Gridview Databind code in the Page_Load event in a !Page.IsPostBack block
if(!IsPostback)
{
//Bind the Gridview Databind
}
Show Online Username
if i say Simply it will show the online Username for the last 15 Minutes.
Code-behind:
// here getting the 15 Minutes, if you want the time difference you use it here..ie: to // update the your page at regular intervals.
TimeSpan onlineSpan = new TimeSpan(0,15,0);
// here i minus the 15 Minutes from the Current Datetime and pass it as a parameter
DateTime compareTime = DateTime.Now.Subtract(onlineSpan);
using (SqlCommand cmd = new SqlCommand("SELECT users.username from users where users.LastActivityDate > @CompareDate ", con))
{
cmd.Parameters.Add("@CompareDate", SqlDbType.DateTime).Value = compareTime;
using(SqlDataAdapter adap = new SqlDataAdapter())
{
adap.SelectCommand = cmd;
}
}
DataTable dt = new DataTable();
adap.Fill(dt);
OnlineuserList_GridView.DataSource = dt;
OnlineuserList_GridView.DataBind();
Creating Dynamic Controls
Good Day to All.
HTML Code
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns ="True" OnRowDataBound="GridView1_RowDataBound"> <Columns > <asp:TemplateField > <ItemTemplate > <table > <tr> <td> <asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder> </td> <br /> <td> <asp:PlaceHolder ID="PlaceHolder2" runat="server"></asp:PlaceHolder> </td> <br /> <td> <asp:PlaceHolder ID="PlaceHolder3" runat="server"></asp:PlaceHolder> </td> </tr> </table> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> <asp:Button ID="Button1" runat="server" Text="Get Value" OnClick="Button1_Click" />
Code-Behind
private void BindArraylist()
{
List<string> bindG = new List<string>() ;
bindG .Add ("Mani");
bindG .Add ("Shivaram");
bindG .Add ("Gopi");
bindG.Add ("Venu");
GridView1 .DataSource = bindG ;
GridView1 .DataBind ();
}
//page_OnLoad
if (!Page.IsPostBack)
{
BindArraylist();
}
//On Row databound we are creation a dynamic dropdownlist, by adding some items and added to the Placholder Container
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
PlaceHolder p1 = new PlaceHolder();
PlaceHolder p2 = new PlaceHolder();
PlaceHolder p3 = new PlaceHolder();
p1 = (PlaceHolder)e.Row.FindControl("PlaceHolder1");
p2 = (PlaceHolder)e.Row.FindControl("PlaceHolder2");
p3 = (PlaceHolder)e.Row.FindControl("PlaceHolder3");
DropDownList d1 = new DropDownList();
DropDownList d2 = new DropDownList();
DropDownList d3 = new DropDownList();
d1.ID = "d1";
d1.Items.Add("123");
d1.Items.Add("00");
d1.Items.Add("dfgdf");
d2.ID = "d2";
d2.Items.Add("34f");
d2.Items.Add("h456");
d2.Items.Add("ngfy3e35");
d3.ID = "d3";
d3.Items.Add("3478");
d3.Items.Add("0fghdj0");
d3.Items.Add("2d43g5gh5");
p1.Controls.Add(d1);
p2.Controls.Add(d2);
p3.Controls.Add(d3);
}
}Write the code onButton_Click to get the selected value, before that i am calling the bindArraylist method again to re-Create dropdownlist control.
protected void Button1_Click(object sender, EventArgs e)
{
BindArraylist();
foreach (GridViewRow row in GridView1.Rows)
{
DropDownList d1 = new DropDownList();
DropDownList d2 = new DropDownList();
DropDownList d3 = new DropDownList();
d1 = (DropDownList)row.FindControl("d1");
d2 = (DropDownList)row.FindControl("d2");
d3 = (DropDownList)row.FindControl("d3");
//txtValues.Add(d1.SelectedIndex.ToString());
Response.Write(d1.SelectedValue.ToString() + "-" + d2.SelectedValue.ToString() + "-" + d3.SelectedValue.ToString());
}
}
Sys.WebForms.PageRequestManagerServerErrorException
When i was worked with Ajax with timer Control i have the task ie: updating the some control inside the UpdatePanel ie: I am refreshing or call the method at regular intervals. That time i got this error
Sys.WebForms.PageRequestManagerServerErrorException ... 404 not found
This error occurs only when the page is idle for 1 min or more than 1 min, so i googled to get the solution for this issue. there is number of solution available according the problem and at which situation you are using.
< asp:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="false" />
Creating Windows Service using ASP.NET
Now I am going to explain how to Create a windows Service in asp.net
What is the purpose of Creating windows service in asp.net ?
For ex: if you have the task of Sending birthday email to the members Automatically or you are going to do some manipulation on particular day or do some manipulation on Consecutive intervals so at this situation you can go for Window service or even you can do birth email process through Sql Job Scheduling.
Now see how to create a simple service.
Choose Create Project -> VisualC# -> Windows -> Windows Service
Fig 1:
So once you give the windowService Name it will show this - by default the serviceName is Service1 here i am changed to TimerService.
Fig 2:
Then Right Click on Service - Select -> Add Installer
Fig 3:
Then the ProjectInstaller window show two Services like serviceProcessIntaller1 , serviceInstaller1 so you have to change some Properties for this service
Properties of serviceProcessIntaller1
Account - > there are some 4 types of account are there as per the requirement
1) LocalService - for only particular computer
2) Network Service - to access resource on remote side ie: server
3) Local System - to works on local System
4) User - Based on User credentials
For Brief Description Check it :
http://technet.microsoft.com/en-us/library/ms143504.aspx
Fig 4:
Properties of serviceInstaller1
StartType :
1) Automatic
2) Manual
3) Disabled
You have to specify whether you are going to start this Service Manually or Automatically or Disabled the Service.then give the name for ServiceName Property , And give some Name for DisplayName property - this name will be displayed on your servicelist to identify your Service.
Fig 5:
Now we going to write the code for Service on Service1.cs
by default it has OnStart and OnStop Event - so this event occurs when service start and stop.
using System.Timers;
Add timer to do some manipulation on particular intervals
//Initialize the timer
Timer timer = new Timer();
so here is the code - what i am doing is create a method called AddToFile where i am adding the string to the file ie: on C Directory if the file is present it will write it on or it will create a new file with the specified name and write the content on that file.
And onStart Event i am creating the Timer Elapsed event which called at every 1 minute so their i am adding another entry on that event.
Finally onStop Event i set the timer enabled = false and made last entry ie: Service stopped.
protected override void OnStart(string[] args)
{
// TODO: Add code here to start your service.
//add line to the file
AddToFile("Make starting service");
//ad 1: handle Elapsed event
timer.Elapsed += new ElapsedEventHandler(OnElapsedTime);
//ad 2: set interval to 1 minute (= 60,000 milliseconds)
timer.Interval = 60000;
//ad 3: enabling the timer
timer.Enabled = true;
}
protected override void OnStop()
{
// TODO: Add code here to perform any tear-down necessary to stop your service.
timer.Enabled = false;
AddToFile("Make stopping service");
}
private void AddToFile(string contents)
{
//set up a filestream
FileStream fs = new FileStream(@"c:\timelog.txt", FileMode.OpenOrCreate, FileAccess.Write);
//set up a streamwriter for adding text
StreamWriter sw = new StreamWriter(fs);
//find the end of the underlying filestream
sw.BaseStream.Seek(0, SeekOrigin.End);
//add the text
sw.WriteLine(contents);
//add the text to the underlying filestream
sw.Flush();
//close the writer
sw.Close();
}
private void OnElapsedTime(object source, ElapsedEventArgs e)
{
AddToFile("Make Another entry");
}so once you written the code just press F5 to run it show this dialog
Fig 6:
so you can start the service to start the service you have to install installutil.exe through commandline.
so go to Command Prompt on this Path.
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727
From here you have to install the service , once you compile the project exe file is created on bin folder.
here is the step to install the Service
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727: InstallUtil "F:\WindowsService1\bin\Debug\WindowsService1.exe"
so if you press enter. Service will be installed.
To UnInstall The service follow this line
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\: IntsallUtil /u"F:\WindowsService1\bin\Debug\WindowsService1.exe"
Once the Serice is installed it will be available on your Service list To check this follow this one
Start -> Control Panel -> Administrative Tools -> Services -> then find the Service as you given while creating the windowsService ie: DisplayName : TimerService
Fig7:
so if you set the Startup Type - Automatic - the service started when the System boots, you can also start the service Manually Right Click on the Service -> start. to start the service.
After the start the service check the C:\ Directory - you can check the file with the entry.
Happy Coding.
Compress and Cache the CSS and JS file using ASP.NET
In my last article i have discussed how to compress .aspx pages. Now we are going to see how to compress the Javascript and CSS file.
Add these two line to include all your Css and Js file on your appSettings tag on your web.config, You can get the file name using key part of the appSettings.
<add key="Set_Css" value="App_Themes/Default/Css1.css,App_Themes/Default/Css2.css"/> <add key="Set_Javascript" value="Javascripts/Js1.js,Javascripts/Js2.js, http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js"/>
After that you have to give the cSS and JS path on the Page1.aspx.
<link type="text/css"
rel="Stylesheet"
href="HttpCombiner.ashx?s=Set_Css&t=text/css&v=1" />
<script
type="text/javascript"
src="HttpCombiner.ashx?s=Set_Javascript&t=type/javascript&v=2" >
</script>Thats all, now you upload the file to server and check the JS,CSS file compressed (check the file length before and after applying this technique) using Fiddler tool or any other tools.
These are some tools to check Page response time.
http://www.aptimize.com/
http://websiteoptimization.com/services/analyze/
http://www.fiddler2.com/
Compressing Asp.Net Pages
Good Evening to All.
Here I am going to cover how to compress the .aspx pages.
so there are no.of ways to compress the pages in asp.net
1) using IIS.
2) using Code ie: through HTTPCompress.dll i got the source code from codeproject.com.
so i am going to share with you.
There are two type of Compression ie: Deflate , GZIP. here i am going to use GZIP compression to compress the asp.net pages.
First Place the DLL file ie::HTTPCompress.dll to the Bin folder of your project.
Then you have to include some tag on web.config file
<configsections>
<sectiongroup name="Flanders">
<section name="HttpCompress" type="Flanders.Library.Modules.HttpCompress.Configuration, HttpCompress">
</section>
</sectiongroup>
<flanders>
<httpcompress compressiontype="GZip">
<excludedpaths>
<add path="NoCompression.aspx">
</add>
<excludedmimetypes>
<add mime="image/jpeg">
</add>
</excludedmimetypes></excludedpaths>
</httpcompress>
</flanders></configsections>Here i am using GZiP Compression technique. there are two more inner Tags ie: ExcludePaths, ExcludeMimeTypes.
ExcludePaths - It includes the Page Name that don't want to compress.
ExcludeMimeTypes - Include the mime types that dont want to compress the images..
By default images are compressed so no need to compress the image while using compression so our ExcludedMimeTypes tag should be like this.
<excludedmimetypes> <add mime="image/jpeg"> <add mime="image/jpg"> <add mime="image/png"> <add mime="image/gif"> </add> </add> </add> </add> </excludedmimetypes>
<httpmodules> <add> name="HttpCompressModule" type="Flanders.Library.Modules.HttpCompress.HttpModule,HttpCompress"/> </add> </httpmodules>Download Source Code
Credit goes to :
Ref: http://www.codeproject.com/KB/aspnet/HttpCompress.aspx
Postback not works when using HTTPCompression
Some members asked this question on forums. Here is the Solution to overcome this issue.
When i am going to compress the .aspx pages using HTTPCompression, the postback will not works. Because it also compressing the Scripresource.axd, webresource.axd file.
To make the postback works in your project you do not compress the above two files, by adding these code.
Solution:
........, <httpcompress compressiontype="GZip"> <excludedpaths> <add path="scriptresource.axd"> <add path="webresource.axd"> </add> </add> </excludedpaths></httpcompress>
And one more thing don't compress the images like jpg, gif, jpeg etc.. because its already compressed one. if you compress the image it will degrade the performance. you should the exclude the image from compression.
Solution:
.., <excludedmimetypes> <add mime="image/jpeg"> </add> </excludedmimetypes>
Thanks to all.
Convert String to DateTime using ASP.NET
I saw the question repeatedly asking on forums ie: how to convert the String to datetime.
even if someone give solution still the problems exists..,
Error: String is not recognized as a valid DateTime.
Here i am giving the solution to overcome the problem.
First make sure whether you entered is a valid date or not because User may enter alphabets, special symbols etc.. so in order to avoid that , I have to validate the textbox. Here i am using the Regex to to validate the date.
This is my Article to vaildate date using Regex
try
{
string sDate ="06/05/2010";
// this the regex to match the date ie: dd/MM/yyyy
string _dateExpression = @"^((0[1-9]|[12][0-9]|3[01])[- /.](0[1-9]|1[012])[- /.](?:19|20)\d\d)$";
Regex chkDate = new Regex(_dateExpression);
if ((chkDate.IsMatch(sDate))
{
// so if the date is valid and its matched you can store the date on DB or do some manipulatio.
}
else
{
// show invalid date
}
}
catch (System.FormatException ex)
{
// show invalid date
}
catch(Exception ex1)
{
throw;
}So if the user enter other than numbers it shows format exception to avoid this exception. once i caught the FormatException i am showing the Message to user ie:- input is not valid date or something.
Another small manipulation on DateTime
DateTime sDate = new DateTime();
sDate = DateTime.Today; // Here i am getting like this 5/6/2010
// So i want this format 05/06/2010 - for this i am using Format to Convert the Date as i Want.
string gDate = String.Format("{0:dd-MM-yyyy}", sDate);Thanks to All.
Sending Email Asynchronously
Good Morning to Everybody this is my First article.
Now i am going to see how to send email Asynchronously, actually we send email normally using asp.net Example check here..
Send Email Using ASP.NET
By default smtpClient has one method called SendAsync to send an email ansynchronously. so if you sending an email normally it will take some time for each mail sent. But if you send an email Asynchronously it will not wait for each mail sent it will do the other process , while mail sending is done at background process.
So Here is the code.
//creating mail message object MailMessage mailMessage = new MailMessage(); mailMessage.From = new MailAddress("venkat@gmail.com"); mailMessage.To.Add(new MailAddress("msdotnettechies@gmail.com")); mailMessage.CC.Add(new MailAddress("user1@gmail.com")); mailMessage.Bcc.Add(new MailAddress("user2@gmail.com")); mailMessage.Subject = "Email Checking Asynchronously"; mailMessage.Body = "Email test asynchronous"; mailMessage.IsBodyHtml = true;//to send mail in html or not SmtpClient smtpClient = new SmtpClient();//portno here smtpClient.Host = "smtp.gmail.com"; smtpClient.EnableSsl = true ; //True or False depends on SSL Require or not smtpClient.Credentials = new NetworkCredential("yourGmail@gmail.com", "yourpassword"); //smtpClient.UseDefaultCredentials = true; //true or false depends on you want to default credentials or not Object mailState = mailMessage; //this code adds event handler to notify that mail is sent or not smtpClient.SendCompleted += new SendCompletedEventHandler(smtpClient_SendCompleted); try { smtpClient.SendAsync(mailMessage, mailState); } catch (Exception ex) { Response.Write(ex.Message); Response.Write(ex.StackTrace); } // this is the event called on main method void smtpClient_SendCompleted(object sender, System.ComponentModel.AsyncCompletedEventArgs e) { MailMessage mailMessage = e.UserState as MailMessage; if (e.Cancelled || e.Error != null) { Response.Write(e.Error.Message); Response.Write(e.Error.StackTrace); } else { Response.Write("Email sent successfully"); } }
Ref : http://jalpesh.blogspot.com/2010/02/how-to-send-mail-asynchronously-in.html
Logout issue : Copy the URL of the user page and paste user after logout show the page only IE has Issue
Even if I set the Session on page_load event but no use. So the thing is Cache ie: the page has been cached stored on Client Browser, so we need to disable the cache.
So Add this line on Master Page inside the Head Tag.
<meta http-equiv="PRAGMA" value="NO-CACHE"></meta> <meta content="Mon, 01 Jan 1990 12:00:00 GMT" http-equiv="Expires"></meta>
CATEGORIES
- ASP.Net (78)
- C# (36)
- Validation (16)
- Regex (14)
- Error and Solutions (10)
- Javascript (7)
- Vb.Net (7)
- Email (6)
- Image (5)
- System.IO (5)
- Tiny_Mce Editor (4)
- DateTime (3)
- GDI (3)
- Refresh issue (2)
- Sql Server (2)
- captcha (2)
- AJAX (1)
- Date (1)
- Default button (1)
- Download a file (1)
- Eval (1)
- Google (1)
- Google Map (1)
- HTML Validation (1)
- Inline Tags (1)
- Like Operator (1)
- Logout (1)
- MCC Award (1)
- Paypal (1)
- Rich Text Editor (1)
- Round Corner (1)
- SSIS (1)
- StringBuilder (1)
- Tooltip (1)
- Viewstate MAC failed (1)
- Windows Forms (1)
- Windows Service (1)
- XML (1)
- file upload (1)
- masterpage (1)
Curabitur vel urna.
Scing elit Augue scientieted musica.
Entertainment
Lorem Ipsum
- AJAX (1)
- ASP.Net (78)
- C# (36)
- captcha (2)
- Date (1)
- DateTime (3)
- Default button (1)
- Download a file (1)
- Email (6)
- Error and Solutions (10)
- Eval (1)
- file upload (1)
- GDI (3)
- Google (1)
- Google Map (1)
- HTML Validation (1)
- Image (5)
- Inline Tags (1)
- Javascript (7)
- Like Operator (1)
- Logout (1)
- masterpage (1)
- MCC Award (1)
- Paypal (1)
- Refresh issue (2)
- Regex (14)
- Rich Text Editor (1)
- Round Corner (1)
- Sql Server (2)
- SSIS (1)
- StringBuilder (1)
- System.IO (5)
- Tiny_Mce Editor (4)
- Tooltip (1)
- Validation (16)
- Vb.Net (7)
- Viewstate MAC failed (1)
- Windows Forms (1)
- Windows Service (1)
- XML (1)
Lorem Ipsum
- AJAX (1)
- ASP.Net (78)
- C# (36)
- captcha (2)
- Date (1)
- DateTime (3)
- Default button (1)
- Download a file (1)
- Email (6)
- Error and Solutions (10)
- Eval (1)
- file upload (1)
- GDI (3)
- Google (1)
- Google Map (1)
- HTML Validation (1)
- Image (5)
- Inline Tags (1)
- Javascript (7)
- Like Operator (1)
- Logout (1)
- masterpage (1)
- MCC Award (1)
- Paypal (1)
- Refresh issue (2)
- Regex (14)
- Rich Text Editor (1)
- Round Corner (1)
- Sql Server (2)
- SSIS (1)
- StringBuilder (1)
- System.IO (5)
- Tiny_Mce Editor (4)
- Tooltip (1)
- Validation (16)
- Vb.Net (7)
- Viewstate MAC failed (1)
- Windows Forms (1)
- Windows Service (1)
- XML (1)
Headline Animator
Site Worth
My site is worth$16,159.24Your website value?
Recent Post - Widget
FEEDJIT Live Traffic Feed
Subscribe via email
Pages
My IndiRank
Followers
About Me
- Venkat



