Blue Theme Orange Theme Green Theme Red Theme
 
Home | Forums | Videos | Photos | Blogs | Beginners | Advertise with Us
 | Consulting  
Submit an Article Submit a Blog 
 Jump to
Skip Navigation Links
TechnologyExpand Technology
WebsiteExpand Website
Mindcracker MVP Summit 2012
Search :       Advanced Search »
Home » ASP.NET and Web » Server.Transfer : Passing values from one page to another page

Server.Transfer : Passing values from one page to another page

This article shows you, how to pass values from one page to another page by using Server.Transfer method.

Page Views : 95434
Downloads : 501
Rating :
 Rate it
Level : Beginner
   Print Read/Post comments Post a comment  Similar Articles  
   Email to a friend  Bookmark  Author's other articles  
Download Files:
ServerTransfer.zip
 
 
6 Months Free & No Setup Fees ASP.NET Hosting!
Become a Sponsor
 Tag Cloud
 Latest Jobs
More ... 
 Latest Interview Questions
More ... 

Some times, we want to pass values from one page to another page. There are many ways by which we can do this like: by using query string, or session variable, or Server.Transer etc.

Web Forms pages are classes in your application, and as such, you can create properties for them as you would any class. However, Web Forms pages have a very short lifetime, since they effectively exist only long enough to perform page processing. Properties on a Web Forms page therefore have limited use, since they exist only while the page is being processed. But if you transfer control from one page to another using specific techniques, the second page can still access properties on the first page.

This article shows you, how to pass values from one page to another page by using Server.Transfer() method.

Assign value to property of first page [ Form1.aspx ]

Declare Property : In first page, declare one or more read-only properties and return the property value you want to pass to the next page.

Public ReadOnly Property FirstName() As String

    Get

        Return txtFName.Value

    End Get

End Property


Public
ReadOnly Property LastName() As String

    Get

        Return txtLName.Value

    End Get 

End Property

Public ReadOnly Property Address1() As String

    Get

        Return txtAdd1.Value

    End Get 

End Property

Public ReadOnly Property Address2() As String

    Get

        Return txtAdd2.Value

    End Get 

End Property

Public ReadOnly Property UserData() As NameValueCollection

    Get

        Return Request.Form

    End Get
End Property

Call Server.Transer method to access second page.

Private Sub btnForm2_ServerClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnForm2.ServerClick

    Server.Transfer("Form2.aspx")

End Sub

 

Private Sub btnForm3_ServerClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnForm3.ServerClick

    Server.Transfer("Form3.aspx")
End Sub

To read property values from the source page in the called page.

To get the property values of the first page from the called page, create an instance variable of the source page class. You then assign to it the HTTP object (an instance of the IHttpHandler class), the object that received the original request.

1. Create a global instance variable that is typed to the class of the source page.        

Private frmSource As Form1

2. In the Page_Load handler, get the source page from the Context.Handler object (IHttpHandler interface) and assign it to the variable that you created in step 1. You must cast the handler object to the type of the source page class.

frmSource = CType(HttpContext.Current.Handler, Form1)

3. Get the property values from the source page and use them as you would any object properties.

[ Form2.aspx.vb ]

lblFName.InnerText = frmSource.FirstName

lblLName.InnerText= frmSource.LastName

lblAdd1.InnerText= frmSource.Address1

lblAdd2.InnerText= frmSource.Address2

[ Form3.aspx.vb ] 

By using NameValueCollection : The Form property of Request object returns a NameValueCollection representing a collection of form variables. You can access value of any form field by its Id like userData["txtFName"].The NameValueCollection class is a member of System.Collections.Specialized namespace.

Dim userData As NameValueCollection = frmSource.UserData

lblFName.InnerText = userData("txtFName")

lblLName.InnerText= userData("txtLName")

lblAdd1.InnerText= userData("txtAdd1")

lblAdd2.InnerText= userData("txtAdd2") 

Reference: MSDN January 2006

NOTE: THIS ARTICLE IS CONVERTED FROM C# TO VB.NET USING A CONVERSION TOOL. ORIGINAL ARTICLE CAN BE FOUND ON C# CORNER (http://www.c-sharpcorner.com/).

Comment Request!
Thank you for reading this post. Please post your feedback, question, or comments about this post Here.
Login to add your contents and source code to this article
 [Top] Rate this article
 
 About the author
 
Sanjay
Looking for C# Consulting?
C# Consulting is founded in 2002 by the founders of C# Corner. Unlike a traditional consulting company, our consultants are well-known experts in .NET and many of them are MVPs, authors, and trainers. We specialize in Microsoft .NET development and utilize Agile Development and Extreme Programming practices to provide fast pace quick turnaround results. Our software development model is a mix of Agile Development, traditional SDLC, and Waterfall models.
Click here to learn more about C# Consulting.
 
Introducing MaxV - one click. infinite control. Hyper-V Hosting from MaximumASP.
Finally – a virtual platform that delivers next-generation Windows Server 2008 Hyper-V virtualization technology from a managed hosting partner you can truly depend on. Visit www.maximumasp.com/max for a FREE 30 day trial. Hurry offer ends soon. Climb aboard the MaxV platform and take advantage of High Availability, Intelligent Monitoring, Recurrent Backups, and Scalability – with no hassle or hidden fees. As a managed hosting partner focused solely on Microsoft technologies since 2000, MaximumASP is uniquely qualified to provide the superior support that our business is built on. Unparalleled expertise with Microsoft technologies lead to working directly with Microsoft as first to offer IIS 7 and SQL 2008 betas in a hosted environment; partnering in the Go Live Program for Hyper-V; and product co-launches built on WS 2008 with Hyper-V technology.
Dynamic PDF
ceTE software specializes in components for dynamic PDF generation and manipulation. The DynamicPDF™ product line allows you to dynamically generate PDF documents, merge PDF documents and new content to existing PDF documents from within your applications.
Discover the top 5 tips for understanding .NET
Ricky Leeks presents the top 5 tips for understanding .NET Interoperability. Learn more.
Nevron Chart for .NET 2010.1 Now Available
The leading .NET charting control now features PDF, Flash and Silverlight export, visualization of large datasets and more. Deliver true charting functionality to your BI, Scorecard, Presentation or Scientific apps. Download evaluation now.
ASP.NET 4 Hosting
Get 2 Months Free of ASP.NET Hosting for Only $4.95/month! Receive FREE MS SQL and MySQL Databases Including ASP.NET 4/3.5, MVC 3.0, Silverlight 4, Windows 2008/IIS 7.0 Plus FREE IIS 7 Modules. Host UNLIMITED ASP.NET Web Sites – Click Here!
 
 Post a Feedback, Comment, or Question about this article
Subject:
Comment:
Team Foundation Server Hosting
Become a Sponsor
 Comments
How about Request.Form by nikshukla On February 22, 2007
You can also get values using Request.Form("txtAdd2") when you use Server.Transfer("Form2.aspx",true).
Reply | Email | Modify 
Re: How about Request.Form by Sanjay On March 16, 2007
Hi Nik ! thanks a lot for your valuable comment. Sanjay
Reply | Email | Modify 
How do I take information from one web based form and have the info transferred to another web based form? by Jerry On March 27, 2007
My question is? How do I take information from one web based form and have the info transferred to another web based form? This is my situation, I use two different web based programs in my job. All of the data entry used in one program can take up to 40 minuets to input, then I have to enter the same information in a totally different web based program on another site. Do you know of a program I could use or is it possible to make a web based form myself that will transfer the information to both of the web based forms I use. I am confident that I could make a web form and database to take the data I need to input and then transfer the data in to two separate output forms that would match the two different programs I use. I just do not know how to transfer that data with out cutting and pasting for an hour each time. Any suggestions,
Reply | Email | Modify 
Re: How do I take information from one web based form and have the info transferred to another web based form? by Sanjay On April 5, 2007
Hi Jerry You can use web service or AJAX to transfer data from one web application to another. You can also pass data in xml form.
Reply | Email | Modify 
webservice by aisha On April 24, 2007
hello. i have a question. we have a web service using SOAP protocol and RPC messaging to transfer data from a server to our back end system. the events transfer was running successfully but now has stopped what could be the possible reasons for this and what are the major and minor things i need to check. kindly assist me in this mail id is aishadawood@hotmail.com aisha
Reply | Email | Modify 
Thanks and Remarks by Rudy On August 10, 2007
Dear Sanjay Kumar

thanks for your article, it really helped me along on my project.

I do have some remarks:

Step 1 to create a global instance variable

Public Shared frmSource As Form1


Step 2 to get the source page from the Context.Handler

frmSource = CType(HttpContext.Current.Handler, SolutionName.Form1)


Step 3 to get property values

lblFName.InnerText = SolutionName.Form1.frmSource.FirstName
Reply | Email | Modify 
passing values from one page to another in ms access by anand On August 12, 2010
i have create a two input boxes for username and password. i need to store the username and pass the username to another form in ms access   
Reply | Email | Modify 
DevExpress Free UI Controls
 © 2012  contents copyright of their authors. Rest everything copyright Mindcracker. All rights reserved.