zoukankan      html  css  js  c++  java
  • Asp.net QueryString批量插入和更新

    public static string InsertOrUpdateQueryString(string[] keys, string[] values)
            {
                return InsertOrUpdateQueryString(System.Web.HttpContext.Current.Request, keys, values);
            }
    
            public static string InsertOrUpdateQueryString(System.Web.HttpRequest request, string[] keys, string[] values)
            {
                string keyValue;
                string keyCurrent;
    
                System.Text.StringBuilder pathBuilder = new System.Text.StringBuilder(request.Path);
                pathBuilder.Append("?");
                int handedCount = 0;
                if (request.QueryString.HasKeys())
                {
                    for (var i = 0; i < request.QueryString.AllKeys.Length;i++ )
                    {
                        keyValue = request.QueryString.AllKeys[i];
                        if (string.IsNullOrEmpty(keyValue))
                        {
                            continue;
                        }
    
                        if (Array.IndexOf<string>(keys, keyValue) != -1)
                        {
                            continue;
                        }
                        keyCurrent = request.QueryString[i];
    
                        if (string.IsNullOrEmpty(keyValue))
                        {
                            continue;
                        }
    
                        if (i != 0)
                        {
                            pathBuilder.AppendFormat("&{0}={1}", keyValue, keyCurrent);
                        }
                        else
                        {
                            pathBuilder.AppendFormat("{0}={1}", keyValue, keyCurrent);
                        }
                        handedCount++;
                    }
                }
                for (var i = 0; i < keys.Length; i++)
                {
                    keyValue = keys[i];
                    keyCurrent = values[i];
                    if (string.IsNullOrEmpty(keyValue) || string.IsNullOrEmpty(keyCurrent))
                    {
                        continue;
                    }
                    if (handedCount++ != 0)
                    {
                        pathBuilder.AppendFormat("&{0}={1}", keyValue,keyCurrent);
                    }
                    else
                    {
                        pathBuilder.AppendFormat("{0}={1}", keyValue, keyCurrent);
                    }
                }
                return pathBuilder.ToString();
            }
  • 相关阅读:
    OpenGL3:先导篇 数据类型
    Linux开发:同步与异步
    前端面试题
    工具
    API和DLL
    CSS了一个浮动导航条
    AJAX背景技术介绍
    2014年8月18日17:02:53
    怎么增加照片的KB大小
    HTML5增加的几个新的标签
  • 原文地址:https://www.cnblogs.com/yomho/p/3905276.html
Copyright © 2011-2022 走看看