DataSet数据传送性能比较

1、直接返回DataSet对象

    特点:通常组件化的处理机制,不加任何的修饰及处理。

    优点:代码精简,易于处理,小数据量处理比较快。

    缺点:大数据量的传递处理慢,消耗网络资源。

    建议:当应用系统在内网、专网(局域网)或者外网(广域网)且数据量在KB级时的应用,采用该模式。

    BLL:

     public DataSet GetDataSet()
          {

      string sql ="select * from Users";

      SqlConnectioin con = new  SqlConnection("Server=192.168.79.20;DataBase=1212,user=sa;pwd=sa");

      con.Open();

      SqlDataAdapter sa = new SqlDataAdapter (sql,con);
              DataSet ds = new DataSet();
              sa.Fill(ds);   

      con.Close();

      return ds;

        }

    对象调用:

    protect  void btn_ok(Object sender,EventArgs e)

    {

        DataSet ds =GetDataSet();

        this.Grivdview.DataSoure=ds.Table[0];

        this.GrivdView.DataBind();

    }

2、返回DataSet对象用Binary序列化后的字节数组

    特点:字节数组流的处理模式;

    优点:易于处理,可以对中文内容起到加密作用。

    缺点:大数据量的传递处理慢,较消耗网络资源。

    建议:但系统需要进行较大数据交换时采用。

    BLL:

     public byte[] GetDataSetByte()
            {
              DataSet ds =GetDataSet();//获取DataSet数据对象
              BinaryFormatter bf = new BinaryFormatter();//定义二进制
              MemoryStream ms = new MemoryStream();//定义内存流
              bf.Serialize(ms, ds);//以二进制的形式对DataSet对象进行序列化,并存入到内存流中
              byte[] buff = ms.ToArray();//把内存流的数据写入字节数组
              return buff;

               }

     对象调用:

    protect  void btn_ok(Object sender,EventArgs e)

    {

        byte[] buffer = GetDataSetByte();
                BinaryFormatter bf = new BinaryFormatter();
               DataSet ds = bf.Deserialize(new MemoryStream(buffer)) as DataSet;

        this.Grivdview.DataSoure=ds.Table[0];

        this.GrivdView.DataBind();

    }

3、返回DataSetSurrogate对象,该对象采用Binary序列化后的字节数组

    特点:微软提供的开源组件。

        下载地址:http://support.microsoft.com/kb/829740/zh-cn

    优点:易于处理,可以对中文内容起到加密作用。

    缺点:大数据量传递处理慢,较消耗网络资源。

    建议:但系统需要进行较大数据交换时采用。

4、返回DataSetSurrogate对象,该对象采用Binary序列化并ZIP压缩后的字节数组

    特点:对字节流数组进行压缩后传递,需微软DataSetSurrogate.dll。

    优点:当数据量大时,性能提高效果明显,压缩比例大。

    缺点:相比第三方组件,压缩比例还需有待提高。

    建议:当系统需要进行大数据量网络数据传递时,建议采用此种可靠、高效、免费的方法。

posted on 2012-02-20 21:48  海纳  阅读(658)  评论(0编辑  收藏  举报