您的位置:首页 > 编程语言 > ASP

如何使用asp.net2.0的UpdateBatchSize高效上传文件

2009-10-14 15:11 399 查看
使用UpdateBatchSize效率真的很高,我做了一个小demo,希望大家在项目中灵活的使用它,代码如下提供DEMO下载

Code
protected void Button1_Click(object sender, EventArgs e)
{
ListBox1.Items.Clear();

SqlConnection conn = new SqlConnection(WebConfigurationManager.ConnectionStrings["demoConnectionString"].ToString());
SqlCommand selectComm = new SqlCommand("select * from product", conn);
SqlCommand updateComm = new SqlCommand("update product set remark=@remark", conn);
updateComm.Parameters.Add("@remark", SqlDbType.VarChar, 200, "remark");
updateComm.UpdatedRowSource = UpdateRowSource.None;

SqlDataAdapter sda = new SqlDataAdapter();
sda.SelectCommand = selectComm;
sda.UpdateCommand = updateComm;
DataSet ds = new DataSet();
sda.Fill(ds);
//for (int i = 1; i < 10; i++)
//{
// UpdateData(sda, ds, i);
//}
UpdateData(sda, ds, 300);
}
public void UpdateData(SqlDataAdapter sda, DataSet ds, int recordCount)
{
foreach (DataRow row in ds.Tables[0].Rows)
{
row["remark"] = "当前时间:" + DateTime.Now.ToString();
}
try
{
sda.UpdateBatchSize = recordCount;
long oldTicks = DateTime.Now.Ticks / TimeSpan.TicksPerMillisecond;
sda.Update(ds);
long ticksSpan = (DateTime.Now.Ticks / TimeSpan.TicksPerMillisecond - oldTicks) / 1000;
ListBox1.Items.Add("UpdateBatchSize=" + recordCount.ToString() + "时,用时:" + ticksSpan.ToString() + "。");
}
catch (Exception ex)
{
ListBox1.Items.Add(ex.Message);
}
finally
{

}
}

源码下载:点击这里
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: