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();
            }
  • 相关阅读:
    BZOJ2095 [Poi2010]Bridges
    BZOJ3307 雨天的尾巴
    【CSP2020】 T3 动物园
    【CSP2020】 T1儒略日
    洛谷P3455 [POI2007]ZAP-Queries
    【黑科技学习】光速幂
    XJTUOJ #1023 JM的祖传零钱箱
    XJTUOJ #1168 zxh的后宫管理系统
    XJYUOJ #1053 nocriz与队列计算机
    XJTUOJ #1017 JM的完美集合
  • 原文地址:https://www.cnblogs.com/yomho/p/3905276.html
Copyright © 2011-2022 走看看