Sample page in ASP.NET to show you different collections like Forms, Querystring, Cookies etc

Sometimes, while troubleshooting I am interested to find out all the details about certain collections in ASP.NET, like Forms, QueryStrings, Headers, ServerVariables, Cookies, Sessions and Params... I created a very simple aspx page which would show you all the details...

Create any text file with .aspx extension in your IIS (I have named it Collection.aspx)

<%@ Page Language="vb"%>
<script runat="server">
    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
        Session("Test1") = "Testing 1"
        Session("Test2") = "Testing 2"
        Session("Test3") = "Testing 3"
        Session("Test4") = "Testing 4"
        Session("Test5") = "Testing 5"
        If Not IsPostBack Then
            Response.Cookies.Add(New HttpCookie("TC1", "Test Cookie 1"))
            Response.Cookies.Add(New HttpCookie("TC2", "Test Cookie 2"))
            Response.Cookies.Add(New HttpCookie("TC3", "Test Cookie 3"))
            ddList.Items.Add(String.Empty)
            ddList.Items.Add("forms")
            ddList.Items.Add("querystring")
            ddList.Items.Add("headers")
            ddList.Items.Add("servervariables")
            ddList.Items.Add("cookies")
            ddList.Items.Add("session")
            ddList.Items.Add("params")
            ddList.AutoPostBack = True
        Else
            Response.Write("<BR><BR><HR>")
        End If
    End Sub
    Private Sub ddList_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
        Select Case ddList.SelectedItem.ToString
            Case "forms"
                EnumerateCollection(Request.Form)
            Case "querystring"
                EnumerateCollection(Request.QueryString)
            Case "headers"
                EnumerateCollection(Request.Headers)
            Case "servervariables"
                EnumerateCollection(Request.ServerVariables)
            Case "param"
                EnumerateCollection(Request.Params)
            Case "cookies"
                EnumerateCollection(Request.Cookies)
            Case "session"
                EnumerateCollection()
        End Select
    End Sub
    Private Sub EnumerateCollection()
        Dim x As String
        Response.Write("<TABLE border=1>")
        For Each x In Session.Keys
            Response.Write("<TR>")
            Response.Write("<TD>")
            Response.Write(x)
            Response.Write("</TD>")
            Response.Write("<TD>&nbsp;")
            Response.Write(Session.Item(x))
            Response.Write("</TD>")
            Response.Write("</TR>")
        Next
        Response.Write("</TABLE>")
    End Sub
    Private Sub EnumerateCollection(ByVal coll As System.Web.HttpCookieCollection)
        Dim x As String
        Response.Write("<TABLE border=1>")
        For Each x In coll.AllKeys
            Response.Write("<TR>")
            Response.Write("<TD>")
            Response.Write(x)
            Response.Write("</TD>")
            Response.Write("<TD>&nbsp;")
            Response.Write(coll(x).Value)
            Response.Write("</TD>")
            Response.Write("</TR>")
        Next
        Response.Write("</TABLE>")
    End Sub
    Private Sub EnumerateCollection(ByVal coll As System.Collections.Specialized.NameValueCollection)
        Dim x As String
        Response.Write("<TABLE border=1>")
        For Each x In coll
            Response.Write("<TR>")
            Response.Write("<TD>")
            Response.Write(x)
            Response.Write("</TD>")
            Response.Write("<TD>&nbsp;")
            Response.Write(coll(x))
            Response.Write("</TD>")
            Response.Write("</TR>")
        Next
        Response.Write("</TABLE>")
    End Sub
</script>
<HTML>
    <HEAD>
        <title>Show the different collections</title>
    </HEAD>
    <body>
         <form id="Form1" method="post" runat="server">
        <asp:dropdownlist id="ddList" runat="server" Width="176px" style="Z-INDEX: 101; LEFT: 16px; POSITION: absolute; TOP: 16px" OnSelectedIndexChanged=ddList_SelectedIndexChanged></asp:dropdownlist>
         </form>
    </body>
</HTML>

Is you browse this page, you will see a drop down as follows... select any option and it will list you all the different values of that collection.

 Output

Hope that helps,
Rahul

Share this post :