2012-05-16 31 views
0

我的管理屬性名稱爲e/m/BioOffice/Texte/m/BioPosition/Text。當我嘗試執行以下代碼:在fulltextsqlquery中訪問自定義已爬網屬性

string queryTxt = "SELECT URL, e/m/BioOffice/Text,e/m/BioPosition/Text FROM SCOPE() where \"scope\"='ektron25056203187' And FREETEXT(*,'" + TextBox1.Text.Trim() + "')"; 


       var query = new FullTextSqlQuery(searchApplicationProxy) 
       { 
        QueryText = queryTxt, 
        ResultTypes = ResultType.RelevantResults, 
        ResultsProvider = SearchProvider.Default, 
        TrimDuplicates = false, 
        EnableStemming = true 
       }; 

       ResultTableCollection resultsTableCollection = query.Execute(); 
       ResultTable searchResultsTable = resultsTableCollection[ResultType.RelevantResults];     
       DataTable resultsDataTable = new DataTable(); 
       resultsDataTable.TableName = "Results"; 
       resultsDataTable.Load(searchResultsTable, LoadOption.OverwriteChanges); 

       Label1.Text = "Total results Count : " + resultsDataTable.Rows.Count; 

它給我例外:Your query is malformed. Please rephrase your query。 請幫助我如何訪問這些屬性。

回答

1

喜拉夫試驗搜索服務查詢工具

的SharePoint搜索服務工具是一個豐富的Web服務客戶端,它允許開發人員探討範圍和給定的SharePoint搜索SSP的管理特性,建立查詢在關鍵字或SQL語法中,提交這些查詢並檢查原始Web服務結果。此工具可用於疑難解答和驗證SharePoint環境的行爲和配置。

你可以在惡魔CodePlex上

該工具

http://sharepointsearchserv.codeplex.com/

+0

謝謝V_B。我仍然無法訪問Ektron的搜索服務器,我建議您使用Ektron搜索API來確保您的查詢是正確的。這個屬性命名爲「e/m/BioOffice/Text」。請幫助我訪問 – gaurav

+1

在Sharepoint搜索服務工具中執行查詢時 我收到以下錯誤: <響應域= 「QDomain」> ERROR_BAD_QUERY 您的查詢格式錯誤。請更改您的查詢。 gaurav

+0

您的財產是自定義的嗎? –

1

搜索服務器將此解釋爲一個畸形的查詢由於託管屬性名正斜槓(「/」)。這些屬性名稱應該用雙引號(「),以便搜尋Server的查詢分析器解釋它們從字面上包圍。(注意‘範圍’屬性是如何在WHERE後面的表達條款。參考)

string queryTxt = "SELECT URL, \"e/m/BioOffice/Text\",\"e/m/BioPosition/Text\" FROM SCOPE() where \"scope\"='ektron25056203187' And FREETEXT(*,'" + TextBox1.Text.Trim() + "')"; 

我(參考:AdvancedSearchCriteria