2013-01-15 3 views
1

umbraco.co.kr에 새 문서 유형을 작성한 후이 문서 유형으로 노드를 내용으로 작성했습니다. 새로운 검색 색인을 설정하므로이 코드에서 새 검색 색인 설정이 발견됩니다.umbraco에서 옵션 검색을하십시오.

@* Get the search term from query string *@ 
@{var searchTerm = Request.QueryString["search"];} 
@{var results = ExamineManager.Instance.Search(searchTerm, true); } 

하지만 내 문서 유형에서만 검색 할 수있는 코드를 제한하는 방법을 알지 못합니다.

답변

1

몇 가지 단계가 있습니다.

  • ISearchCriteria 객체를 생성;

    당신은해야합니다

  • docType 별칭을 검색 할 필드로 포함하여 기준 개체에서 검색 식을 만듭니다.
  • 표현식을 사용하여 검색하십시오.

이 코딩 할 수 있습니다와 같은 :

var criteria = ExamineManager.Instance.CreateSearchCriteria(); 

var expression = criteria.Field("nodeTypeAlias", "yourDocTypeAlias") 
         .And() 
         .Field("nodeName", searchTerm); 

var results = ExamineManager.Instance.Search(expression.Compile()); 

Umbraco 노드를 발행 할 때, 그것은 검색 인덱스 노드의 DOCTYPE 별명을 절약 할 수 있기 때문에 가능하다.

이 더 있습니다. 또한 Umbraco가 실제로 저장된 내용을 볼 수 있도록 인덱스 내부를 볼 수있는 독립 실행 형 도구 인 Luke을 다운로드하는 것이 좋습니다.