实现一个效果:
(B/S)后台代码一个方法BindDataList()
这个方法中通过某种途径获取数据,然后绑定到DropDownList1。
在程序执行这个方法的时候无论数据是否获取成功,获取多长时间,都不影响到页面上的其他任何操作。等数据异步获取好了就刷新页面绑定到DropDownList1。就是一个异步的效果,不想因为调用这个方法数据加载时间过长,导致整个程序都一直在等待,假设数据获取一个小时,那现在这一个小时内其他什么事都做不了,程序就卡这了,系统就像死掉了一样,就看着网页下面的进度条缓慢的爬行,如果这时再进行其他数据获取页面跳转类的操作,整个系统就死掉了,鬼知道要等到什么时候那边的数据加载什么时候能完,想放弃都放弃不了。我想通过下面类似方法可以实现异步效果,从而不影响系统其他操作private delegate void MylDelegate();
MylDelegatedelegate = new MylDelegate(BindDataList);
IAsyncResult asyncResult = delegate.BeginInvoke(LoadModelCompleted, modelDelegate);
//或者
Thread thread = new Thread(new ThreadStart(BindDataList));
thread.Start();
//或者用AJAX之类的方法实现异步以上方法我都试过了,没有得到理想的效果。向对异步加载数据这块比较熟悉的大大们求教!
(B/S)后台代码一个方法BindDataList()
这个方法中通过某种途径获取数据,然后绑定到DropDownList1。
在程序执行这个方法的时候无论数据是否获取成功,获取多长时间,都不影响到页面上的其他任何操作。等数据异步获取好了就刷新页面绑定到DropDownList1。就是一个异步的效果,不想因为调用这个方法数据加载时间过长,导致整个程序都一直在等待,假设数据获取一个小时,那现在这一个小时内其他什么事都做不了,程序就卡这了,系统就像死掉了一样,就看着网页下面的进度条缓慢的爬行,如果这时再进行其他数据获取页面跳转类的操作,整个系统就死掉了,鬼知道要等到什么时候那边的数据加载什么时候能完,想放弃都放弃不了。我想通过下面类似方法可以实现异步效果,从而不影响系统其他操作private delegate void MylDelegate();
MylDelegatedelegate = new MylDelegate(BindDataList);
IAsyncResult asyncResult = delegate.BeginInvoke(LoadModelCompleted, modelDelegate);
//或者
Thread thread = new Thread(new ThreadStart(BindDataList));
thread.Start();
//或者用AJAX之类的方法实现异步以上方法我都试过了,没有得到理想的效果。向对异步加载数据这块比较熟悉的大大们求教!
url: "/Account.ashx",
type: "post",
data: username
dataType: 'json',
success: function(result) { //这个是回调函数
exist = result.d;//这里是页面处理完后的返回值
}
});