2014-01-31 5 views
3

NEST의 DeleteByQuery 메소드가 작동하는 데 약간의 어려움이 있습니다.NEST와 ElasticSearch를 사용하는 DeleteByQuery

매우 간단하게 쿼리는 삭제할 항목을 찾지 않으며 그 이유를 파악할 수 없습니다. 같은 쿼리를 사용하여 레코드를 반환합니다 (검색 사용) 및 모든 예상대로 작동합니다.

private void Delete(MyClass someObject) 
    { 
     var response = elasticClient.DeleteByQuery<MyClass>(q => q     
      .Match(m => m.OnField(f => f.Guid).Equals(someObject.Guid))    
      ); 
    } 

나는 단지 NEST를 사용하기 시작 했으므로 이것은 매우 간단한 문제이며 나는 조금 어둡다 고 확신한다!

많은 도움과 제안을 부탁드립니다.

답변

4

.Equals()Object의 .NET 메소드로 동일성을 검사합니다.

Equals()에서 Query(someObject.Guid)으로 전화를 변경하면 정상적으로 작동합니다.

+0

답장을 보내 주셔서 감사합니다. Equals() 호출을 Query (someObject.Guid)로 바꿀 수 없기 때문에 뭔가 빠져 있어야합니다. 무슨 뜻인지 알 수있는 간단한 예를 들려 드릴 수 있습니까? – Ben

+0

Nuget 버전에서 여전히 QueryString()이라고 생각합니다 –

+0

감사합니다. – Ben

관련 문제