2010-12-11 31 views
0

Ce code a fonctionné dans notre service WCF avec SP 2007. Dans notre nouveau serveur sur SP2010 cela ne fonctionne pas. Je ne sais pas si le code doit changer ou s'il y a quelque chose de différent dans la configurationSP2010 FullTetSqlQuery aucun résultat, travaillé sur SP2007

Ce code est-il incorrect? Y a-t-il d'autres choses de configuration que je dois faire? Le service de recherche est démarré.

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); 
        } 
       } 
+0

"Ne fonctionne pas"? Qu'est ce que ça fait? Quelle erreur obtenez-vous? –

Répondre

0

rapidement si vous pouvez obtenir le résultat souhaité dans cette MOSS Search tool bonne façon de déboguer ce genre de cas, plutôt que de casser nos têtes.