Click to Rate and Give Feedback
MSDN
MSDN Library
.NET Development
Previous Versions
.NET Framework 1.1
.NET Framework
Reference
System.Web
HttpRequest Class
Properties
 ServerVariables Property

  Switch on low bandwidth view
This page is specific to
Microsoft Visual Studio 2003/.NET Framework 1.1

Other versions are also available for the following:
.NET Framework Class Library
HttpRequest.ServerVariables Property

Gets a collection of Web server variables.

[Visual Basic]
Public ReadOnly Property ServerVariables As NameValueCollection
[C#]
public NameValueCollection ServerVariables {get;}
[C++]
public: __property NameValueCollection* get_ServerVariables();
[JScript]
public function get ServerVariables() : NameValueCollection;

Property Value

A NameValueCollection of server variables.

Example

The following example writes out the names and values of all named server variables.

[Visual Basic] 
Dim loop1, loop2 As Integer
Dim arr1(), arr2() As String
Dim coll As NameValueCollection
 
' Load ServerVariable collection into NameValueCollection object.
coll=Request.ServerVariables 
' Get names of all keys into a string array.
arr1 = coll.AllKeys 
For loop1 = 0 To arr1.GetUpperBound(0)
   Response.Write("Key: " & arr1(loop1) & "<br>")
   arr2 = coll.GetValues(loop1) ' Get all values under this key.
   For loop2 = 0 To arr2.GetUpperBound(0)
      Response.Write("Value " & CStr(loop2) & ": " & Server.HtmlEncode(arr2(loop2)) & "<br>")
   Next loop2
Next loop1
   

[C#] 
int loop1, loop2;
NameValueCollection coll;
 
// Load ServerVariable collection into NameValueCollection object.
coll=Request.ServerVariables; 
// Get names of all keys into a string array. 
String[] arr1 = coll.AllKeys; 
for (loop1 = 0; loop1 < arr1.Length; loop1++) 
{
   Response.Write("Key: " + arr1[loop1] + "<br>");
   String[] arr2=coll.GetValues(arr1[loop1]);
   for (loop2 = 0; loop2 < arr2.Length; loop2++) {
      Response.Write("Value " + loop2 + ": " + Server.HtmlEncode(arr2[loop2]) + "<br>");
   }
}
   

[C++] 
int loop1, loop2;
NameValueCollection* coll;

// Load ServerVariable collection into NameValueCollection object.
coll=Request->ServerVariables;
// Get names of all keys into a string array.
String* arr1[] = coll->AllKeys;
for (loop1 = 0; loop1 < arr1->Length; loop1++)
{
   Response->Write(String::Format(S"Key: {0}<br>", arr1[loop1]));
   String* arr2[]=coll->GetValues(arr1[loop1]);
   for (loop2 = 0; loop2 < arr2->Length; loop2++) {
      Response->Write(String::Format(S"Value {0}: {1}<br>", __box(loop2), Server->HtmlEncode(arr2[loop2])));
   }
}


[JScript] 
var arr1, arr2 : String[]
var coll : NameValueCollection

coll=Request.ServerVariables // Load ServerVariable collection into NameValueCollection object.
arr1 = coll.AllKeys // Put names of all keys into a string array.
for(var i=0; i < arr1.Length; i++){
  Response.Write("Key: " + arr1[i] + "<br>")
  arr2 = coll.GetValues(i) // Get all values under this key.
  for(var j=0; j < arr2.Length; j++){
      Response.Write("Value " + j + ": " + Server.HtmlEncode(arr2[j]) + "<br>")
  }
}

Requirements

Platforms: Windows 2000, Windows XP Professional, Windows Server 2003 family

See Also

HttpRequest Class | HttpRequest Members | System.Web Namespace

© 2009 Microsoft Corporation. All rights reserved. Terms of Use  |  Trademarks  |  Privacy Statement
Page view tracker