0

私の管理プロパティは、のようe/m/BioOffice/Textに命名されてe/m/BioPosition/Textいます。次のコードを実行しようとすると:

 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。これらのプロパティにアクセスする方法を教えてください。

4

2 に答える 2

1

検索サーバーは、管理プロパティ名にスラッシュ ('/') が含まれているため、これを不正な形式のクエリとして解釈します。これらのプロパティ名は、検索サーバーのクエリ パーサーが文字どおりに解釈できるように、二重引用符 (") で囲む必要があります (式の後の WHERE 句で「スコープ」プロパティがどのように参照されるかに注意してください)。

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

また、Ektron サイトを Search Server と統合している可能性が高いこともわかりました。クエリが整形式であることを確認するために、Ektron 検索 API を使用することをお勧めします。(参照: AdvancedSearchCriteria )

于 2013-01-21T16:22:50.343 に答える
1

こんにちは gaurav Search Service Toolでクエリをテストします

SharePoint 検索サービス ツールは、開発者が特定の SharePoint 検索 SSP のスコープと管理プロパティを調査し、キーワードまたは SQL 構文でクエリを作成し、それらのクエリを送信して、生の Web サービスの結果を調べることができるリッチな Web サービス クライアントです。このツールは、SharePoint 環境の動作と構成のトラブルシューティングと検証に役立ちます。

コードプレックスでそのツールを見つけることができます

http://sharepointsearchserv.codeplex.com/

于 2012-05-16T12:30:32.683 に答える