2014-03-04
展开全部
对于桌面程序 用异步操作,思路如下
Console.Write("开始读取,请稍等...");
new Action(delegate {
//执行取数据的操作
}).BeginInvoke(r =>
{
Console.Write("读取完毕,关闭对话框.");
}, null);
对于Web程序,可以考虑用ajax
Console.Write("开始读取,请稍等...");
new Action(delegate {
//执行取数据的操作
}).BeginInvoke(r =>
{
Console.Write("读取完毕,关闭对话框.");
}, null);
对于Web程序,可以考虑用ajax
更多追问追答
追问
我的是Winform中点击按钮时从数据库取数据 存入到Excel表中 要等待很久,我想给个提示
追答
说的很清楚了, 上面的操作实际是新开了一个线程来执行 你的 "从数据库取数据 存入到Excel表中“ 操作,在完成之后 发生一个回调,关闭对话框就行。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-03-04
展开全部
就用backgroundworker控件吧,简单。
追问
用了他报错 说 “在可以调用 OLE 之前,必须将当前线程设置为单线程单元(STA)模式。请确保您的 Main 函数带有 STAThreadAttribute 标记。 只有将调试器附加到该进程才会引发此异常。”
该怎么改 你有代码吗 谢谢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-03-03
展开全部
看看线程吧,读取数据的代码写在新线程里
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询