1

連絡先を Windows Phone (8) 連絡先ストアに保存しようとしています。

私のコードは、非標準的なことは何もしません:

private async Task SaveContactToLocalStore(IMyLocalContact myLocalContact) {

    var store = await ContactStore.CreateOrOpenAsync(ContactStoreSystemAccessMode.ReadWrite,
                ContactStoreApplicationAccessMode.LimitedReadOnly);

    var contact = new StoredContact(store);

    var properties = await contact.GetPropertiesAsync();

    if (!string.IsNullOrWiteSpace(myLocalContact.Nickname) {
        properties.Add(KnownContactProperties.DisplayName, myLocalContact.Nickname);
    }

    /* Several such addition operations are executed, all identical, except for the values */

    await contact.SaveAsync();
}

マークされた関数のどこかでasync、保存関数を次のように呼び出します。

await SaveContactToLocalStore(myLocalCOntact);

次のエラーが表示されます: System.InvalidCastExceptionon contact.SaveAsync()

完全なエラー テキスト:

System.InvalidCastException: Specified cast is not valid.
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.GetResult()

どこから調査を開始すればよいかわかりません。MSDN の例は問題なく動作します。

4

0 に答える 0