私が試してみること
コンテンツ ツリー内には多くの人がいます。そのための新しいインデックスを作成します。これは、特定の人を検索する際の Web アプリケーションのパフォーマンスを向上させるためです。
インデックスを作成する
PersonIndexer
すべての人をインデックス化するために、Umbraco 7.7 から名前を付けて、検査マネージャーに新しいインデックスを作成しました。これには、個人のノード タイプのみが含まれます。
このために、次のコードを作成しました。
ExamineSettings.config
→ →タグ内のファイルExamineSettings.config
内:Examine
ExamineIndexProviders
providers
<add name="PersonsIndexer"
type="UmbracoExamine.UmbracoContentIndexer, UmbracoExamine"
supportUnpublished="false"
supportProtected="true"
indexSet="Persons"
analyzer="Lucene.Net.Analysis.WhitespaceAnalyzer, Lucene.Net"/>
そして、同じファイル内にこれも追加しましたが、Examine
→ ExamineSearchProviders
→providers
タグ内に:
<add name="PersonsSearcher"
type="UmbracoExamine.UmbracoExamineSearcher, UmbracoExamine"
supportUnpublished="false"
supportProtected="true"
indexSet="Persons"
analyzer="Lucene.Net.Analysis.WhitespaceAnalyzer, Lucene.Net"/>
ExamineIndex.config
タグ内のファイルExamineIndex.config
内:ExamineLuceneIndexSets
<IndexSet SetName="Persons" IndexPath="~/App_Data/TEMP/ExamineIndexes/Persons/" >
<IndexAttributeFields>
<add Name="knowledge" />
<add Name="photo" />
<add Name="name"/>
<add Name="firstName"/>
<add Name="lastName"/>
</IndexAttributeFields>
<IncludeNodeTypes>
<add Name="person" />
</IncludeNodeTypes>
</IndexSet>
書類を入手する
このインデックスを作成すると、インデックス内に 7 つのドキュメントが作成されました。
ビュー内でこのすべてのドキュメントを取得するにはどうすればよいですか。私はこのコードを試しました:
var indexer = ExamineManager.Instance.IndexProviderCollection["PersonsIndexer"];
これにより、そのインデックスのすべてのプロパティが得られます。
質問
これは私が必要とするものではありません。私の質問は次のとおりです。そのインデックスから型付きドキュメントを取得するにはどうすればよいですか?
編集
@Marksの回答の後、私は彼のコードを試しましたが、見ると次のようsearchResults
になりました:
の Lucene 検索を実行すると*
、7 件の結果が得られました。
空の文字列に対してテキスト検索 xor I text xor lucene 検索を実行すると、何も得られません。