QueryService.Query Method

Returns an XML string containing the search results set for the specified query.

Namespace:  websvcSearch
Assembly:  MOSSSOAP (in MOSSSOAP.dll)

[SoapDocumentMethodAttribute("urn:Microsoft.Search/Query", RequestNamespace = "urn:Microsoft.Search", 
	ResponseNamespace = "urn:Microsoft.Search", Use = SoapBindingUse.Literal, 
	ParameterStyle = SoapParameterStyle.Wrapped)]
public string Query(
	string queryXml


Type: System.String
A string specifying the search query XML. The XML format is defined by the Microsoft.Search.Query Schema for Enterprise Search.

Return Value

Type: System.String
A string that contains the query response using elements described by the Microsoft.Search.Response.Document Schema for Enterprise Search.

For queries containing a simple list of search terms, set the type attribute for the QueryText Element in Microsoft.Search.Query Schema for Enterprise Search element of the Microsoft.Search.Query schema to 'STRING'. For SQL syntax queries, set the type attribute to 'MSSQLFT'.

If anonymous access is disabled for the Query web service's Microsoft Office SharePoint Server 2007 web application you must specify the credentials for the web service request using the Credentials property. The search results are trimmed based on the credentials of the current context of the request.

The default sort order is relevance rank. Only relevant results are returned; best bets are not included in the result set. If you want best bets included in the result set, use the QueryEx method.

Using elements from the Microsoft.Search.Query schema, you can specify the following for the result set returned by the Query web method:

The following code example shows how to invoke the Query method. This example assumes the following:

You have referenced the web service proxy class, here called QueryWebServiceProxy, in your code.

You have instantiated a string variable, queryXMLString, and set the value of this variable to the XML string containing the search query.

QueryWebServiceProxy.QueryService queryService = new QueryWebServiceProxy.QueryService();
queryService.Credentials = System.Net.CredentialCache.DefaultCredentials;
string queryResultsString = queryService.Query(queryXMLString);

Setting the proxy class Credentials property to the DefaultCredentials property of the System.Net.CredentialCache class allows you to use the credentials for the identity that the client application is running under for the web service request.

Community Additions