您的位置:首页 > 其它

ADO.NET 2.0 Dataset和Datatable 新功能新特性

2007-03-21 10:07 621 查看
1.新的索引引擎更快的执行效率

下面这段代码在2003中需要157秒,在2005中只要11秒就可以完成:

DataSet ds = new DataSet;

ds.Tables.Add"BigTable";

ds.Tables[0].Columns.Add"ID", Type.GetType"System.Int32";

ds.Tables[0].Columns["ID"].Unique = true;

ds.Tables[0].Columns.Add"Value", Type.GetType"System.Int32";

Cursor.Current = Cursors.WaitCursor;

DateTime datBegin = DateTime.Now;

Random rand = new Random;

int i, intValue;

DataRow dr;

for i = 1; i <= 500000; i++

{

try

{

intValue = rand.Next;

dr = ds.Tables[0].NewRow;

dr["ID"] = intValue;

dr["Value"] = intValue;

ds.Tables[0].Rows.Adddr;

}

catch { }

}

Cursor.Current = Cursors.Default;

MessageBox.Show"Elapsed Time: " + DateTime.Now -
datBegin.Seconds.ToString;

MessageBox.Show"count = " + ds.Tables[0].Rows.Count.ToString;

2.Dataset可以序列化为二进制文件

string connstr =
"server=local;database=northwind;integrated
security=true;async=true";

DataSet ds = new DataSet;

SqlDataAdapter dadpt = new SqlDataAdapter"select from [order
details]", connstr;

dadpt.Fillds;

BinaryFormatter bf = new BinaryFormatter;

FileStream fs = new
FileStream@"c:\xml1.txt",FileMode.OpenOrCreate;

ds.RemotingFormat = SerializationFormat.Binary;

bf.Serializefs,ds;
3.更独立的Datatable

DataTable Write XML string
connstr = "server=local;database=northwind;integrated
security=true;async=true";

SqlDataAdapter dadpt = new SqlDataAdapter"select from [order
details]", connstr;

DataTable dt = new DataTable"Customer";

dadpt.Filldt;

dt.WriteXml@"c:\DataTable.xml",true;

dt.WriteXmlSchema@"c:\DataTableSchema.xml";
DataTable Read XML

StreamReader sr = new
StreamReader@"C:\DataTableSchema.xml";

DataTable dt = new DataTable;

dt.ReadXmlSchemasr;

dt.ReadXmlnew StreamReader@"c:\dataTable.xml";

this.dataGridView1.DataSource =
dt; DataTable
Merge

string connstr =
"server=local;database=northwind;integrated
security=true;async=true";

SqlDataAdapter dadpt = new SqlDataAdapter"select from customers",
connstr;

DataTable dt = new DataTable"Customer";

dadpt.Filldt;

SqlDataAdapter dadpt1 = new SqlDataAdapter"select from customers",
connstr;

DataTable dt1 = new DataTable"Customer1";

dadpt1.Filldt1;

dt.Mergedt1;

this.dataGridView1.DataSource = dt; DataTable
Load DataReader

string connstr =
"server=local;database=northwind;integrated
security=true;async=true";

SqlConnection conn = new SqlConnectionconnstr;

conn.Open;

SqlCommand cmd = new SqlCommand"select from [order details]",
conn;

SqlDataReader dr = cmd.ExecuteReader;

DataTable dt = new DataTable"Customer";

dt.Loaddr;

this.dataGridView1.DataSource = dt;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: