クライアント アプリケーションから Windows SharePoint Services 検索にキーワード クエリを送信する
Windows SharePoint Services での検索 には、クライアント アプリケーションに検索機能を公開するクエリ Web サービスが含まれています。
注意 このコンテキストでは、"クライアント アプリケーション" とはクエリ Web サービスを呼び出すアプリケーションを意味します。これには、ASP.NET Web アプリケーションや Windows フォーム アプリケーションなどがあります。
クエリ Web サービスの QueryEx Web メソッドが検索サービスにクエリを送信し、結果を System.Data.DataSet に返します。
手順
Windows SharePoint Services 検索へのキーワード クエリをクライアント アプリケーションから送信するには
Web サービスのプロキシ クラスを作成します。
Visual Studio 2005 で作業している場合は、「[方法] Visual Studio で Windows SharePoint Services 検索 Web サービスの Web サービス プロキシ クラスを作成する」で概説している手順に従うことができます。
または、「Web サービス記述言語ツール (Wsdl.exe)」を使用できます。「XML Web サービス プロキシの作成」に記載されている手順に従って、プロキシ クラスの参照をクライアント アプリケーションのプロジェクトに追加します。
文字列変数を作成し、検索サービスに渡すキーワード検索クエリを含む XML クエリ文字列に設定します。
Web サービス プロキシ クラスのインスタンスを作成します。
必要な場合は、Web サービスに渡す資格情報を指定します。
クエリ Web サービスの QueryEx Web メソッドを呼び出して、返された結果を System.Data.DataSet に格納します。
コード
//The string containing the keyword to use in the search
string keywordString = "Microsoft";
//The XML string containing the query request information
//for the Web service
string qXMLString = "<QueryPacket xmlns='urn:Microsoft.Search.Query'>"+
"<Query><SupportedFormats><Format revision='1'>"+
"urn:Microsoft.Search.Response.Document:Document</Format>"+
"</SupportedFormats><Context><QueryText language='en-US' type='STRING'>"+
keywordString + "</QueryText></Context></Query></QueryPacket>";
QueryWebServiceProxy.QueryService queryService = new QueryWebServiceProxy.QueryService();
queryService.Credentials = System.Net.CredentialCache.DefaultCredentials;
System.Data.DataSet queryResults = queryService.QueryEx(qXMLString);
resultsGridView.DataSource = queryResults.Tables[0];
See Also
タスク
[方法] Visual Studio で Windows SharePoint Services 検索 Web サービスの Web サービス プロキシ クラスを作成する