首页 > 其他 > 详细

调用WCF的异步方法

时间:2015-06-03 09:37:57      阅读:239      评论:0      收藏:0      [点我收藏+]
            AsyncCallback aLoginCallback = delegate(IAsyncResult result)
                                           {
                                               var aSystemUser = WcfClient.Instance.EndSystemUser_Login(result);
                                               result.AsyncWaitHandle.Close();

                                               if (string.IsNullOrWhiteSpace(aSystemUser.UserId))
                                               {
                                                   ShowMessageBoxInNonMainThread("登录失败:用户名称或者用户密码错误!");
                                                   return;
                                               }

                                               CommonCache.CurrentUser = aSystemUser;

                                               //SynchronizationContext和SendOrPostCallback的引入是为了解决不能在非主线程中访问主线程中创建的控件的问题
                                               SendOrPostCallback aSendOrPostCallback = delegate
                                                                                        {
                                                                                            Hide();
                                                                                            MainForm.Instance.ShowDialog();
                                                                                        };
                                               SynchronizationContext.Current.Send(aSendOrPostCallback, null);
                                           };

            var aParam = GetForm<SystemUserParameter>();
            WcfClient.Instance.BeginSystemUser_Login(aParam, aLoginCallback, null);

  

调用WCF的异步方法

原文:http://www.cnblogs.com/ningkyolei/p/4548286.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!