Этот код работал в нашем сервисе WCF с SP 2007. На нашем новом сервере на SP2010 это не работает. Я не знаю, нужно ли менять код или что-то другое в конфигурации
Этот код неправильный? Есть ли что-то еще, что мне нужно сделать? Служба поиска запущена.
StringBuilder queryText = new StringBuilder();
queryText.Append("SELECT PreferredName ");
queryText.Append("FROM SCOPE() ");
queryText.Append("WHERE \"scope\" = 'People' ");
Microsoft.Office.Server.Search.Query.FullTextSqlQuery query = new Microsoft.Office.Server.Search.Query.FullTextSqlQuery(SPContext.Current.Site);
query.QueryText = queryText.ToString();
query.ResultTypes = Microsoft.Office.Server.Search.Query.ResultType.RelevantResults;
query.RowLimit = 50;
Microsoft.Office.Server.Search.Query.ResultTableCollection results = query.Execute();
if ((int)ResultType.RelevantResults != 0 && results.Exists(ResultType.RelevantResults))
{
ResultTable tblResult = results[ResultType.RelevantResults];
DataTable relResultsTbl = new DataTable();
relResultsTbl.TableName = "Relevant Results";
DataSet ds = new DataSet("resultsset");
ds.Tables.Add(relResultsTbl);
ds.Load(tblResult, LoadOption.OverwriteChanges, relResultsTbl);
foreach (DataRow dataRow in ds.Tables[0].Rows)
{
accountNamesFromSearch.Add(dataRow["AccountName"] as string);
}
}