62,025
社区成员
发帖
与我相关
我的任务
分享
private void FileUpload()
{
}
异步方式:
MethodInvoker mi = new MethodInvoker(FileUpload);
mi.BeginInvoke(null, null);
多线程:
Thread thread = new Thread(FileUpload);
thread.Start();
protected void Page_Load(object sender, EventArgs e)
{
AddOnPreRenderCompleteAsync(
new BeginEventHandler(BeginAsyncOperation),
new EndEventHandler(EndAsyncOperation)
);
}
IAsyncResult BeginAsyncOperation(object sender, EventArgs e, AsyncCallback cb, object state)
{
string sql = "SELECT TOP 10 * FROM dbo.Card_Ext";
SqlConnection _conn = new SqlConnection(ConfigurationManager.
AppSettings["DataAccessContionStringRead"].ToString());
_conn.Open();
SqlCommand cmd = new SqlCommand(sql, _conn);
IAsyncResult rIsynResult = cmd.BeginExecuteReader(cb, cmd,
CommandBehavior.CloseConnection);
return rIsynResult;
}
void EndAsyncOperation(IAsyncResult IResult)
{
if (!IResult.IsCompleted)
{
IResult.AsyncWaitHandle.WaitOne();
}
else
{
SqlDataReader dr = (IResult.AsyncState as SqlCommand).EndExecuteReader(IResult);
if (!dr.IsClosed)
{
List<string> _list = new List<string>();
while (dr.Read())
{
_list.Add(dr[0].ToString());
}
this.GridView1.DataSource = _list;
this.GridView1.DataBind();
}
dr.Close();
}
}