Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

HOW TO: Access ASP.NET Intrinsic Objects from .NET Components by Using Visual C# .NET


View products that this article applies to.

Summary

This step-by-step article describes how to access the ASP.NET intrinsic objects in a Microsoft .NET component. As in Active Server Pages (ASP) pages, the ASP.NET pages have access to the intrinsic objects like Request, Response and Server objects.

Create a .NET Component

To create a .NET component:
  1. In Microsoft Visual Studio .NET, create a new Visual C# .NET Class Library project named ASPNetAccessLibrary. By default, Class1.cs is created.
  2. In Solution Explorer, right-click References, and then click Add Reference.
  3. In the Add Reference dialog box, select System.Web.dll, and then click Select.
  4. Click OK to add the System.Web.dll reference to the project.
  5. Add the following code to the Namespace declaration section of Class1.cs:
    using System.Web;
    using System.Web.SessionState;
    
  6. Add the following method to the Class1 class:
    		public void TestHttpContext()
    		{
    		
    			HttpContext objHttpContext;
    
    			HttpResponse objHttpResponse ;
    			HttpRequest objHttpRequest ;
    			HttpApplicationState objHttpApplication;
    			HttpSessionState objhttpSession ;
    			String strUserAgent ;
    
    			// Get the HttpContext object for the current HTTP request. 
    			objHttpContext = HttpContext.Current;
    
    			// Get the Application State object.
    			objHttpApplication = objHttpContext.Application;
    
    			// Get the Session object.
    			objhttpSession = objHttpContext.Session;
    
    			// Get the Response object.
    			objHttpResponse = objHttpContext.Response;
    
    			// Get the Request object.
    			objHttpRequest = objHttpContext.Request;
    
    			// This code uses the Request object.
    			// You can use other intrinsic objects in a similar fashion
    			strUserAgent = objHttpRequest.ServerVariables["HTTP_USER_AGENT"];
    
    			// This code uses the Response object.
    			objHttpResponse.Write("HTTP USER AGENT: ");
    			objHttpResponse.Write(strUserAgent);
    		}
  7. On the Build menu, click Build Solution to create the ASPNetAccessLibrary.dll component.

Test the Component on an ASP.NET Page

To test the component on an ASP.NET page:
  1. In Visual Studio .NET, create a new Visual C# .NET ASP.NET Web Application project. By default, WebForm1.aspx is created.
  2. In Solution Explorer, right-click References, and then click Add Reference.
  3. In the Add Reference dialog box, click Browse. Locate and select ASPNetAccessLibrary.dll.
  4. Click OK to add the .NET component reference to the project.
  5. In Design view, double-click WebForm1.aspx to open the code-behind page for WebForm1.aspx. WebForm1.aspx.cs is displayed.
  6. Add the following code to the Page_Load event:
    			ASPNetAccessLibrary.Class1 objASPNetLibrary;
    			objASPNetLibrary = new ASPNetAccessLibrary.Class1();
    			objASPNetLibrary.TestHttpContext();
    			objASPNetLibrary = null;
    
  7. On the Debug menu, click Start to view the results. Note that you can see HTTP_USER_AGENT details of the request on the Web page.

↑ Back to the top


References

For more information about HttpContext, visit the following Microsoft Developer Network (MSDN) Web site:

↑ Back to the top


Keywords: KB810928, kbhowtomaster, kbwebforms

↑ Back to the top

Article Info
Article ID : 810928
Revision : 10
Created on : 5/21/2003
Published on : 5/21/2003
Exists online : False
Views : 394