MSDN ライブラリ
情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

Windows Phone 8 の連絡先のフィルタリングと照合

2014/06/18

対象: Windows Phone 8 および Windows Phone Silverlight 8.1 | Windows Phone OS 7.1

組み込みの検索フィルターを使用することにより、Windows Phone OS 7.1 を対象とするアプリケーションで連絡先データを検索できます。すべての連絡先またはスタート画面に固定されている連絡先を検索したり、名前、電話番号、または電子メール アドレスで検索したりできます。

このトピックでは、ユーザーの連絡先データに対する読み取り専用アクセスについて説明します。読み取りアクセスと書き込みアクセスを提供するカスタム連絡先ストアをアプリ用に作成する方法については、「Windows Phone 8 のカスタム連絡先ストア」を参照してください。

このトピックは、次のセクションで構成されています。

通常、連絡先データにアクセスするには、Contacts オブジェクトの参照を取得し、SearchAsync メソッドを呼び出してオブジェクトの非同期検索を実行してから、SearchCompleted イベント ハンドラーで Contact オブジェクトのコレクションとして結果をキャプチャします。詳細については、「Windows Phone 8 の連絡先データにアクセスする方法」を参照してください。

次の表では、さまざまなフィルターと、それらを使用して実行できる検索の種類の例を示します。

フィルターの種類

検索の例

説明

None

SearchAsync(String.Empty, FilterKind.None, "State String 1")

すべての連絡先を検索します。

PinnedToStart

SearchAsync(String.Empty, FilterKind.PinnedToStart, "State String 2")

スタート画面に固定されているすべての連絡先を検索します。

DisplayName

SearchAsync("A", FilterKind.DisplayName, "State String 3")

表示名で検索します。

EmailAddress

SearchAsync("Chris@example.com", FilterKind.EmailAddress, "State String 4")

電子メール アドレスで検索します。

PhoneNumber

SearchAsync("555-0004", FilterKind.PhoneNumber, "State String 5")

電話番号で検索します。

組み込みの検索フィルターを使用すると、名前、電話番号、または電子メール アドレスで連絡先を検索できます。これらの検索には、基になっているデータベースで処理が速く行われるように、インデックスが付けられています。すべての連絡先を検索してから、LINQ を使用して結果のコレクションをクエリすることもできますが、組み込み検索を使用する場合より処理が遅くなります。

名前による照合

名前は、姓、ミドル ネーム、名のプレフィックス部分文字列で照合されます。次の表にいくつかの例を示します。

フィルター文字列

名前

一致するか

Har

Harry Miller

Har

Phyllis Harris

Har

Jón Harry Óskarsson

har

Charlotte Weiss

×

har

Dave Natsuhara

×

電話番号による照合

電話番号の照合は、正確な照合とスマート照合を使用して行われます。市外局番や国際ダイヤル コードなどの違いは無視されます。番号の最後の 6 桁が一致する必要があります。すべての句読点は無視されます。次の表にいくつかの例を示します。

フィルター文字列

電話番号

一致するか

4255551212

(425) 555-1212

2065551212

(425) 555-1212

5551212

(425) 555-1212

425555

(425) 555-1212

×

電子メール アドレスによる照合

電子メール アドレスの照合は、正確な照合とスマート照合を使用して行われます。@ 記号より前の名前の部分は、正確に一致する必要があります。次の表にいくつかの例を示します。

フィルター文字列

電子メール アドレス

一致するか

john@cohowinery.com

john@cohowinery.com

jon@cohowinery.com

john@cohowinery.com

×

john@exchange.cohowinery.com

john@cohowinery.com

john@exchange.com

john@cohowinery.com

×

john@com

john@cohowinery.com

はい (誤った一致)

john@cohowinery

john@cohowinery.com

×

john@coho.com

john@cohowinery.com

はい (誤った一致)

すべての連絡先を検索してから、LINQ を使用して結果のコレクションをクエリできますが、組み込み検索を使用する場合より処理が遅くなります。可能な限り、組み込みの検索フィルターを使用して、名前、電話番号、または電子メール アドレスで連絡先を検索する必要があります。連絡先および予定のデータで LINQ を使用する例については、「Windows Phone 8 の連絡先データにアクセスする方法」および「Windows Phone 8 のカレンダー データにアクセスする方法」を参照してください。

表示:
© 2016 Microsoft