zoukankan      html  css  js  c++  java
  • NameValueCollection 集合用法

          此集合基于 NameObjectCollectionBase 类。但与 NameObjectCollectionBase 不同,该类在一个键下存储多个字符串值。该类可用于标头、查询字符串和窗体数据。

        using System.Collections.Specialized  

        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 + ": " + arr2[loop2] + "<br>");
            }
        }

          Request(item) 在 ASP 中,此方法返回字符串数组。在 ASP .NET 中,它返回 NameValueCollection。
          Request.QueryString(item) 在 ASP 中,此方法返回字符串数组。在 ASP .NET 中,它返回 NameValueCollection。
           Request.Form(item) 在 ASP 中,此方法返回字符串数组。在 ASP .NET 中,它返回 NameValueCollection。
    正如您所见,对于涉及到的所有方法,其变化基本上都相同。
           如果访问的 item(项)只包含特定关键字的一个值,您将不必修改自己的代码。但是,如果给定的关键字具有多个值,您将需要使用其它方法返回值的集合。另请注意,Visual Basic .NET 中的集合都是基于 0,而 VBScript 中的集合是基于 1 的。
           例如,在 ASP 中,将按下列方式访问 http://localhost/myweb/valuetest.asp?values=10&values=20 请求返回的各个查询字符串值:

           在 ASP .NET 中,QueryString 属性返回 NameValueCollection 对象,在检索所需的实际项之前,将需要从该对象中检索 Values 集合。另外需要注意,集合中的第一项是使用 0 而非 1 索引进行检索的:

    下列代码在 ASP 和 ASP .NET 中的运行结果相同:
       <%
             '输出“10”和“20”
             Response.Write (Request.QueryString("values"))
       %>

    AllKeys属性,取得所有关键字名称。

    ====以下是一个取得IP和操作系统以及浏览器的例子=========

        private string getIp()
        {
            /*穿过代理服务器取远程用户真实IP地址:*/
            if(Request.ServerVariables["HTTP_VIA"]!=null)
            return Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();
            else
            return Request.ServerVariables["REMOTE_ADDR"].ToString();
        }
        Label2.Text =getIp();
        HttpBrowserCapabilities bc = new HttpBrowserCapabilities();
        bc = Request.Browser;
        string xitong ="你的操作系统为";
        Label3.Text=xitong+bc.Platform + " 浏览器类型:" + bc.Type;

  • 相关阅读:
    MongoVUE破解方法(转)
    Apache和IIS共享80端口,支持多域名
    让作业飞吧,与屌丝兄弟们分享我的分布式作业调度平台 【拥抱开源,拥抱作业调度的神器Quartz.net】
    关于Nbearlite 访问PostgreSql,MySql,Sqlite的Bug
    php5.4.6/5.3.16/5.2.17安装(In windows),配置(转)
    MSSQL翻页存储过程
    话说客户端连接mongoDB的连接参数(转载)
    关于Windows频繁打开关闭端口时出现的问题(转至老赵)
    zeromq的几种模式(转)
    如何设置代理服务器上网
  • 原文地址:https://www.cnblogs.com/fhuafeng/p/1786936.html
Copyright © 2011-2022 走看看