백업 필드 속성에 액세스하려고 할 때 속성을 확인할 수 없습니다 그것이 능동 nhibernate와 함께 돌아 오는 interace에 대한 쿼리 속성을 해결할 수 없습니다. SpecialFoo를 사용하도록 변경하면 작동합니다.능통 자 NHibernate 내가 다음과 같은 클래스가
//Doesn't Work
return (from s in _session.Linq<SpecialFoo>()
where s.Foo.ID == id
select s).ToList();
//Works
return (from s in _session.Linq<SpecialFoo>()
where s.SpecialFoo.ID == id
select s).ToList();
이 문제를 해결하는 방법에 대한 단서와 그 이유는 무엇입니까? 나는 이것과 관련된 Stackoverflow에 관한 여러 가지 질문을 읽었지만, 불행히도 제공되는 솔루션 중 어느 것도 나의 특별한 경우에 적용될 수없는 것으로 보였다.
감사합니다. 단일 백킹 필드를 유지하는 방법이 있습니까? 인터페이스와 실제 객체를 모두 사용하고 싶습니다. 하나의 백킹 필드 만 갖고 싶습니다. – Zipper
@Zipper - 답변을 업데이트했습니다. – Phill
@Phill, 감사합니다! Unfortunatelly,'Foo'가 _readony_ 속성 일 때'where.Foo.ID == id'를 어떻게 수행하는지는 아직 명확하지 않습니다. 내 경우,'SpecialFoo'는 보호 된'IList' 콜렉션이고'HasMany'로 매핑됩니다. 그러나'푸 '는 그렇지 않다. 'Foo '는이 보호 된 _IList_'SpecialFoo'에 대한 읽기 전용입니다 .IEnumerable_입니다. –