应用程序中的webservice方法上的多个异步调用失败,但exception

我正在尝试创建一个连接到互联网的应用程序,并为每个操作使用web services 。就我而言,我想使用async method ,我已经使用它来获取联系人的集合。我已经意识到,当我为群体做同样的事情(意味着让群体异步)时,我在呼叫中有错误,但是当使用正常呼叫时,我没有。所以我在网上进行了一些研究并发现了很多人有同样的问题。
他们中的一些人被要求使用WCF (我不知道杰克)。我想知道是否还有其他方法可以解决这个问题。 如果没有,有人可以指向我在线的可靠资源,并帮助我度过难关吗? 感谢阅读和帮助这里是我的代码:

  public partial class main : Window { //... private static vmcSession session; private MyService service = new MyService(); private contactInfo[] loadedcontact; //.... public main() { InitializeComponent(); //service.addContactCompleted +=new addContactCompletedEventHandler(addContactCompleted); service.getContactsCompleted += new getContactsCompletedEventHandler(getContactsCompleted); service.getGroupsCompleted += new getGroupsCompletedEventHandler(getGroupsCompleted); fillContents(); } private void getGroupsCompleted(object sender, getGroupsCompletedEventArgs e) { try { groupListBox.ItemsSource = e.Result; } catch (Exception ex) { MessageBox.Show(ex.InnerException.Message); } } private void getContactsCompleted(object sender, getContactsCompletedEventArgs e) { try { loadedcontact = e.Result; contactListBox.ItemsSource = loadedcontact; } catch (Exception ex) { MessageBox.Show(ex.Message); } } private void addContactCompleted(object sender, addContactCompletedEventArgs e) { throw new NotImplementedException(); } public void fillContents() { displayUserInformation(); loadContacts(); service.getGroupsAsync(session.key, null); //groupListBox.ItemsSource = service.getGroups(session.key, null); cmbSenderIds.ItemsSource = service.getSenderIds(session.key, null); if (cmbSenderIds.Items.Count > 0) { cmbSenderIds.SelectedIndex = 0; } loadGrid(); } public void loadContacts() { service.getContactsAsync(session.key, null); } public void displayUserInformation() { lblName.Content = session.user.firstName; lblEmail.Content = session.user.email; lblCreditValue.Content = Decimal.Ceiling(session.user.balance).ToString(); } public void loadGrid() { try { hitoryGrid.ItemsSource = service.viewMessages(session.key, null).ToList(); } catch (Exception ex) { MessageBox.Show(ex.Message); } } } 

解决它。有两个方法使用异步调用,一个带有附加参数唯一ID。需要调用ID,所以我将新GUID传递给它,就是它。谢谢你试图帮助我