C# ContactPicker在Windows Phone 8.1 Silverlight中不工作

C# ContactPicker在Windows Phone 8.1 Silverlight中不工作,c#,silverlight,windows-phone-8.1,contactpicker,C#,Silverlight,Windows Phone 8.1,Contactpicker,我已尝试通过以下方式在Windows Phone 8.1 SL应用程序中获取联系人信息 在我的职责范围内 private async void PickAContactButton_Click(object sender, RoutedEventArgs e) { var contactPicker = new Windows.ApplicationModel.Contacts.ContactPicker(); contactPicker.desi

我已尝试通过以下方式在Windows Phone 8.1 SL应用程序中获取联系人信息

在我的职责范围内

    private async void PickAContactButton_Click(object sender, RoutedEventArgs e)
    {
        var contactPicker = new Windows.ApplicationModel.Contacts.ContactPicker();
        contactPicker.desiredFieldsWithContactFieldType.add(Windows.ApplicationModel.Contacts.ContactFieldType.email);
        Contact contact = await contactPicker.PickContactAsync(); // this throws System.NotImplementedException
        // Additional information: The method or operation is not implemented.

        if (contact != null)
        { ... }
     }
完全相同的功能在Windows Phone 8.1 RT中工作。
ContactPicker
类在WP 8.1 RT和WP 8.1 SL中都受支持,根据


知道发生了什么吗?

我今天在Win 8.1的Universal Store应用程序中出现了这种行为,所以这可能对你有所帮助。不过我有不同的异常(FileNotFoundException和plain System.Exception),所以我不确定这是同一个问题

就我的实验而言,这是使ContactPicker工作目前所需要的:

  • 必须在UI线程中创建ContactPicker实例
  • contactPicker.DesiredFieldsWithContactFieldType必须只有一项(0项或>1项产生异常)
这就是我最后做的:

// using Windows.ApplicationModel.Core;

// in an async method:
Contact user = null;
AutoResetEvent resetEvent = new AutoResetEvent(false);
await CoreApplication.MainView.CoreWindow.Dispatcher.RunAsync(
    CoreDispatcherPriority.Normal, 
    (async ()=>{
      ContactPicker contactPicker = new ContactPicker();
      contactPicker.DesiredFieldsWithContactFieldType.Add(ContactFieldType.PhoneNumber);
      user = await contactPicker.PickContactAsync();
      resetEvent.Set();
    }
);
resetEvent.WaitOne();
if (user != null) {
    // do smth
}

我有同样的问题已经有几个小时了。。。有关此主题的任何更新?为我提供
var contactPicker=new Windows.ApplicationModel.Contacts.contactPicker()的
System.IO.FileNotFoundException
IList contacts=等待contactPicker.PickContactsAsync()有相同的问题。这似乎只是框架的一些问题。检查这里,这是一个bug,我将对其进行归档。哦,好吧,我现在正在经历这种行为,而且从最初的问题发布到现在已经有一段时间了(