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();
        }

Asp.net QueryString批量插入和更新

时间: 2024-12-23 12:17:47

Asp.net QueryString批量插入和更新的相关文章

C#使用SqlDataAdapter 实现数据的批量插入和更新

近日由于项目要求在需要实现中型数据的批量插入和更新,晚上无聊,在网上看到看到这样的一个实现方法,特摘抄过来,以便以后可能用到参考. 一.数据的插入 DateTime begin = DateTime.Now; string connectionString = ......; using(SqlConnection conn = new SqlConnection(connectionString)){ conn.Open(); SqlDataAdapter sd = new SqlDataAd

java批量插入或更新的问题

在批量插入或者更新中,setXXX的时候字段类型必须一致.例如:在普通sql中 pstmt8.setBigDecimal(j ,xxx);可以写成pstmt8.setString(j,xxx.toString()); 但在批量插入时必须写成pstmt8.setBigDecimal(j,xxx);否则批处理会报提交中至少有一条不成功的问题.折腾一下午,终于搞好了.顺便记下来,方便参考.

批量插入与更新随记

一.批量插入数据: int times = 0; for (int count = 0; count < dt.Rows.Count; times++) { for (int i = 0; i < 400 && 400 * times + i < dt.Rows.Count; i++, count++) { dtTemp.Rows.Add(dt.Rows[count].ItemArray); } myDataAdapter.Update(dtTemp); dtTemp.R

MyBatis动态批量插入、更新Mysql数据库的通用实现方案

一.业务背景 由于需要从A数据库提取大量数据同步到B系统,采用了tomikos+jta进行分布式事务管理,先将系统数据源切换到数据提供方,将需要同步的数据查询出来,然后再将系统数据源切换到数据接收方,进行批量的插入和更新操作, 关于数据源的切换可以参考之前的文章<spring+springMVC+Mybatis架构下采用AbstractRoutingDataSource.atomikos.JTA实现多数据源灵活切换以及分布式事务管理> 二.批量插入的具体实现 1.查询需要同步的数据: @Aut

Hibernate批处理操作优化 (批量插入、更新与删除)

问题描述 我开发的网站加了个新功能:需要在线上处理表数据的批量合并和更新,昨天下午发布上线,执行该功能后,服务器的load突然增高,变化曲线异常,SA教育了我一番,让我尽快处理,将CPU负载降低. 工作所需,我经常要写些程序批量处理数据,每次执行几十万数据处理的时候,我机子的CPU都会飙高,而且数据处理速度会越来越慢.比如第一个1W条要5分钟,第二个1W条就要10分钟,要干其他事情的时候机子也卡的不行,只能等着处理完数据. 其实我一直认为是数据量太大,从来不认为是程序问题,所以一直没怎么关注过.

sql server中批量插入与更新两种解决方案分享(存储过程)

转自http://www.shangxueba.com/jingyan/1940447.html 1.游标方式 复制代码代码如下: DECLARE @Data NVARCHAR(max) SET @Data='1,tanw,2,keenboy' --Id,Name DECLARE @dataItem NVARCHAR(100) DECLARE data_cursor CURSOR FOR (SELECT * FROM split(@Data,';')) OPEN data_cursor FETC

批量插入或更新数据

/// <summary>        /// 大数据单表批量插入,带事务        /// </summary>        /// <param name="keepID"></param>        /// <param name="tableName"></param>        /// <param name="dt"></para

启用事务操作,解决批量插入或更新sqlite,mssql等数据库耗时问题

private void button1_Click(object sender, EventArgs e) { //Sqlite使用事务批量操作 极大的提高速度 DateTime starttime = DateTime.Now; using (SQLiteConnection con = new SQLiteConnection(connStr)) { con.Open(); DbTransaction trans = con.BeginTransaction();//开始事务 SQLite

Mybatis+Oracle进行数据的批量插入和更新

项目中会遇到这样的情况,查询出多条记录(一个List对象集合),一次性要插入多条数据到数据库中,下面就拿Data类来看看两种插入方法: 方法一: Mybatis本身只支持逐条插入,比较笨的方法,就是遍历一个List,循环中逐条插入,比如下面这段代码 <pre class="java" style="margin-top: 0px; margin-bottom: 10px; box-sizing: border-box; overflow: auto; font-fami