• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Asp.Net使用Bulk实现批量插入数据

    本文实例讲述了Asp.Net使用Bulk实现批量插入数据的方法,分享给大家供大家参考之用。具体方法如下:

    主要功能代码如下:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Diagnostics;
    using System.Data;
    using System.Data.SqlClient;
    using System.Configuration;
    using Fx678Member.Framework.Exceptions;
     
    namespace MeiYuanJinYe.Admin.HttpHandler
    {
      /// summary>
      /// CreateAccount 的摘要说明
      /// /summary>
      public class CreateAccount : IHttpHandler
      {
     
        public void ProcessRequest(HttpContext context)
        {
          context.Response.ContentType = "text/plain";
          Guid classRoomId = Guid.Parse(context.Request["ClassRoomId"]);
          int Count = int.Parse(context.Request["Count"]);
          DataTable dt = GetTableSchema();
          Random ran = new Random();
          for (int i = 0; i  Count; i++)//循环往DataTable中赋值
          {
            DataRow r = dt.NewRow();
            r[1] = ran.Next(10000000, 100000000);
            r[2] = ran.Next(10000000, 100000000);
            r[3] = classRoomId;
            r[4] = DateTime.Now;
            r[5] = 1;
            dt.Rows.Add(r);
          }
          BulkToDB(dt);
          context.Response.Write(BulkToDB(dt) ? "ok" : "error");
          context.Session["dataTable"] = dt;
        }
     
        public void BulkToDB(DataTable dt)
        {
          SqlConnection sqlConn = new SqlConnection(ConfigurationManager.AppSettings["ConnString"]);
          SqlBulkCopy bulkCopy = new SqlBulkCopy(sqlConn);
          bulkCopy.DestinationTableName = "ClassRoomAccount";//数据库表名
          bulkCopy.BatchSize = dt.Rows.Count;
          try
          {
            sqlConn.Open();
            if (dt != null  dt.Rows.Count != 0)
              bulkCopy.WriteToServer(dt);
          }
          catch (Exception ex)
          {
            new AppException("批量生成直播室账号异常", ex);
          }
          finally
          {
            sqlConn.Close();
            if (bulkCopy != null)
              bulkCopy.Close();
          }
        }
     
        public DataTable GetTableSchema()
        {
          DataTable dt = new DataTable();
          dt.Columns.AddRange(new DataColumn[]{ 
            new DataColumn("AccountId",typeof(int)), 
            new DataColumn("AccountName",typeof(string)), 
            new DataColumn("Password",typeof(string)),
            new DataColumn("ClassRoomId",typeof(Guid)),
            new DataColumn("AddDate",typeof(DateTime)),
            new DataColumn("IsActive",typeof(int))
          });//数据库表结构
          return dt;
        }
        public bool IsReusable
        {
          get
          {
            return false;
          }
        }
      }
    }
    
    

    希望本文所述对大家的asp.net程序设计有所帮助。

    您可能感兴趣的文章:
    • C#.NET中如何批量插入大量数据到数据库中
    • C#/.Net 中快速批量给SQLite数据库插入测试数据
    • asp.net新闻列表生成静态页之批量和单页生成
    • 在ASP.NET 2.0中操作数据之六十二:GridView批量更新数据
    • 在ASP.NET 2.0中操作数据之六十四:GridView批量添加数据
    • 在ASP.NET 2.0中操作数据之三十七:DataList批量更新
    • ajax readyState的五种状态详解
    • AJAX(XMLHttpRequest.status)状态码
    • javascript学习笔记(七)Ajax和Http状态码
    • asp.net线程批量导入数据时通过ajax获取执行状态
    上一篇:Asp.Net使用Npoi导入导出Excel的方法
    下一篇:*.ashx文件不能访问Session值的解决方法
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Asp.Net使用Bulk实现批量插入数据 Asp.Net,使用,Bulk,实现,批量,