2013-04-14 1 views
4

Lucene.Net 3.0.3에서 필드를 향상시키고 싶습니다. 그러나 SetBoost 메서드는 Lucene에서 더 이상 정의되지 않은 것처럼 보입니다. 필자는 필드를 어떻게 향상시킬 수 있습니까? 예를 들어 문서의 "제목"이 나머지 필드보다 더 많은 가중치를 가지기를 원합니다.Lucene.Net에서 필드를 부양하는 방법 3

+1

를 적절한 속성은 Set_ 및 Get_ 방법을 대체하기 위해 도입되었다. 이제 SetBoost() 및 GetBoost() 메서드 대신 Boost 속성이 표시됩니다. – Keith

답변

6

색인 시간 또는 검색 시간에 필드를 강조 표시 할 수 있습니다. 은 사용자가 설정할 수있는 인덱스 시간 필드를 높일 수 :

Field titleField = new Field("title", strTitle, Field.Store.NO, Field.Index.ANALYZED); 
titleField.Boost = 2; 

doc.Add(titleField); 

는 OmitNorms가 false로 설정해야 함을 기억하십시오.

사용자가 설정 할 수있는 검색 시간 필드 강화하려면 Lucene.Net 3에서

TermQuery q = new TermQuery(new Term("title", "cat")); 
    q.Boost = 2; 

    _searcher.Search(q, 100); 
관련 문제