Search
Winners

Win Prizes

Social Presence
Twitter Twitter LinkedIn YouTube Google

Like us on Facebook
Advertisements
Top Articles Author
Wed, 23-Jul-2014 Authors
Goud.Kv
250
All Time Authors
Sourav.Kayal
39750
Sheonarayan
37300
Niladri.Biswas
33350

Latest members | More ...


(Statistics delayed by 5 minutes)
Ads

Data Transfer to other aspx pages using Query String Session cookies and cross page posting

Amit.jain
Posted by under ASP.NET category on for Intermediate level | Views : 8944 red flag
If you found plagiarised (copied) or inappropriate content,
please let us know the original source along with your correct email id (to communicate) for further action.
Several time while developing asp .NET applications we need to transfer daa from
one page to another, we can achieve this by several methods , some of them are

1. Using Query String

2. Using Cookies

3. Using Session Variables

4. Using Cross Page Posting

5 . Using Server.Transfer

1 . QueryStrings 
Suppose we have a textbox txtData and we want it's value on other page
than in code behind we would write in click event of btnGo


private void btnGO_Click(object sender, System.EventArgs e)
{
Response.Redirect("Default2.aspx?Value=" +txtData.Text);
}


To retrieve this value on second page

private void Page_Load(object sender, System.EventArgs e)
{
txtData.Text = Request.QueryString["Value"];
}


If we have passed more than one values in querystring we can either retrieve them by variable name or by index

private void Page_Load(object sender,System.EventArgs e)
{
txtData.Text = Request.QueryString[0];
}


QueryString can't be used for sending long data because it has a max lenght limit.

Data being transferred is visible in url of browser.

To use spaces and & in query string we need to replace space by %20 and & by %26

private void btnGO_Click(object sender, System.EventArgs e)
{
Response.Redirect("Default2.aspx?Value=" +
txtData.Text.Replace(" ","%20");
}


Or we can use Server.UrlEncode method

private void btno_Click(object sender, System.EventArgs e)
{
Response.Redirect("Default2.Aspx?" +
"Name=" + Server.UrlEncode(txtData.Text));
}

2. Data Transfer Using Cookies
Cookies are stored in client machine and can have max size of 4kb
To store value from textbox

protected void btnGo_Click(object sender, EventArgs e)
{
HttpCookie MyCookie = new HttpCookie("Data");
MyCookie.Value = txtData.Text;
MyCookie.Expires = DateTime.Now.AddDays(1);
Response.Cookies.Add(MyCookie);
Response.Redirect("Deault2.aspx");
}

And to retrieve data from cookie in Deault2.aspx page
In the Page_Load event write
String strData = Request.Cookies["Data"].Value);
3. Data Transfer using Session Variables
Storing and retrieving Data to and from
session variables on the page we want
To store a value in session we need to write

protected void btnGo_Click(object sender, EventArgs e)
{
Session["VariableName"] = txtData.Text;
Response.Redirect("Deault2.aspx");
}


To retrieve value from Session on other page

string strData = Session["VariableName"].ToString();

Don't forget to use proper typecasting as session stores data as Object and we need to change it to desired type.

To remove Session Variables use

Session.Contents.Remove("VariableName"); or
Session.Contents.RemoveAll(); or
Session.Abandon();


Please read my next article to know about cross paging and server.transfer method at http://www.dotnetfunda.com/articles/article213.aspx

Page copy protected against web site content infringement by Copyscape
About the Author

Amit.jain

Full Name: amiT jaiN
Member Level: Starter
Member Status: Member
Member Since: 12/26/2008 7:19:35 AM
Country:

http://csharpdotnetfreak.blogspot.com/

Login to vote for this post.
Found interesting? Add this to:


Comments or Responses

Login to post response

Comment using Facebook