Windows phone 7 如何获取Windows phone 7的所有联系人并将其写入文件

Windows phone 7 如何获取Windows phone 7的所有联系人并将其写入文件,windows-phone-7,Windows Phone 7,我想解决的问题是: 获取所有联系人信息,如姓名和手机,并将其写入文件并保存在ISO中 如果我想在手机中搜索可用联系人,如何使用SearchAsync? 如何迭代返回结果,并将联系人逐个写入文件? 以下是我的代码: private void btnSearch_Click(object sender, RoutedEventArgs e) { Contacts contacts = new Contacts(); contacts.SearchCompleted

我想解决的问题是: 获取所有联系人信息,如姓名和手机,并将其写入文件并保存在ISO中

如果我想在手机中搜索可用联系人,如何使用SearchAsync? 如何迭代返回结果,并将联系人逐个写入文件? 以下是我的代码:

private void btnSearch_Click(object sender, RoutedEventArgs e)
{    
    Contacts contacts = new Contacts();     
    contacts.SearchCompleted += new EventHandler<ContactsSearchEventArgs>(contacts_SearchCompleted);   
    contacts.SearchAsync(displayName,FilterKind.DisplayName,null);    
    //search for all contacts   
    contacts.SearchAsync(string.Empty, FilterKind.None, null);
}
看看:

要迭代:

void contacts_SearchCompleted(object sender, ContactsSearchEventArgs e)
{
    foreach(var contact in e.Results)
    {
        // write to Isolated storage
    }
}

请参见

到目前为止您尝试了什么?您是否阅读了MSDN中有关开发WP7应用程序的部分?谢谢。假设输入了姓名和电话号码。但如果没有输入电子邮件地址和其他地址怎么办?搜索完成将抛出null异常错误。Ie txtBlkCtc.text=联系人。电子邮件。在这种情况下,如何继续迭代?然后首先检查您感兴趣的值并跳过那些为空的字段。我怀疑当Email属性为null或空时,`txtblktcc.text=contact.Email`不会生成异常。它只会在联系人为空时生成异常。我下载了该应用程序,并尝试在emulator上获取所有默认联系人。共有7个联系人,但它在第4个联系人上抛出错误,因为电话号码中有null。希望你能在这些问题上提供帮助。谢谢你应该在使用之前测试电话号码是否为空。问题解决了。使用Foreach迭代PhoneNumber集合。即使第二个或第三个电话号码为空,也应该没有问题。谢谢
void contacts_SearchCompleted(object sender, ContactsSearchEventArgs e)
{
    foreach(var contact in e.Results)
    {
        // write to Isolated storage
    }
}