NHibernate.Search
및 Lucene.Net
을 사용 중입니다. 나는 비슷한 문제를 경험 한 사람이 있는지 물어볼 것이다. 이것은 다음의 세 가지 수업에 관한 상황입니다.IndexEmbedded의 하위 클래스 필드 색인화
[Indexed]
public class File
{
[Field]
public virtual string FileId { get; private set; }
[ContainedIn]
public virtual List<Record> Records { get; private set; }
}
[Indexed]
public class CaseFile : File
{
[Field]
public virtual int CaseYear { get; set; }
[Field]
public virtual int CaseSequenceNumber { get; set; }
}
[Indexed]
public class Record
{
[IndexedEmbedded]
public virtual File ParentFile { get; set; }
}
문제는 레코드 클래스를 인덱싱하려고 할 때입니다. 목표는 File
클래스와 서브 클래스 CaseFile
의 모든 필드를 Record
색인에 포함시키는 것입니다. 그러나 Record
클래스의 색인을 생성 할 때 내 기록 색인에있는 File
수퍼 클래스 필드 만 가져옵니다. 레코드 인덱스에 CaseFile
하위 클래스의 필드가 누락되었습니다.
Record
클래스의
ParentFile
특성에
[IndexedEmbedded(TargetElement = typeof(CaseFile))]
을 시도했다, 그러나 이것은 완전히 빈 인덱스, 또는 전혀 색인에 연결됩니다.
File 클래스를 인덱싱하는 경우 예상 하위 클래스 속성은 File
인덱스에서 예상대로 인덱싱됩니다.
누구나 Hibernate/NHibernate
과 (과) 비슷한 문제가 발생 했습니까?