我想將NHibernate.Search集成到多語言網站。現在,這個網站包含一個多語言類Article
。這是通過一個獨立的課程來完成的 - Article_CultureInfo
它存儲了特定於語言的內容。的Article
領域是nhibernate.search/lucene.net多語言分析器
Article
-------
ID
Name
而且Article_CultureInfo
是:
Article_CultureInfo
-------
ID
ArticleId
CultureCode
PageTitle
Content
我使用Nhibernate.Search.Mapping
繪製出現場/文件信息。我希望在可能的基礎上結合詞幹和同義詞分析等搜索功能。有什麼方法可以在運行時指定Lucene分析器,而不是編譯時間/初始化?
說我們正在分析PageTitle
的內容將被存儲在各自的Lucene索引 - 這些內容可以基於CultureCode
價值爲英語,法語,意大利語等。因此,分析儀應根據此值進行更改。我嘗試過實施一個自定義MultilingualAnalyser
,但唯一可用的數據是要分析的字符串,即值爲PageTitle
。只有那一點,我不能推斷出這種語言。 (我可以看看語言檢測技術,但這是超出範圍,因爲我已經明確知道它是什麼,並且會過度殺傷並且不是100%可靠的。)
如果我除了令牌之外,該對象的實例,我可以從中獲得CultureCode
值,並據此進行分析。任何想法將不勝感激 - 我真的希望避免直接使用Lucene.Net,因爲NHibernate.Search看起來很好地集成。
謝謝!