2013-04-16 2 views
0

는 내가 지금과 같은 정의 형으로 선택하는 조회를 말한다동적 LINQ없는

query.OrderBy("SomeDate"); 

또는

query.OrderBy("Object1.CreatedDate"); 

하지만 난에 주문하려고 할 때, 예를 들어, "SomeDate"또는 "Object1.CreatedDate", 나는 홍보를 얻을 수 예외가 ompted :

없음 속성 또는 필드 'SomeDate'형태로 존재하는 '합니다 MyType'

이제

, 난 그냥 쿼리에 메서드 구문에서 순서를 추가 할 때 :

query = query.OrderBy(x => x.SomeDate) 

또는

query = query.OrderBy(x => x.Object1.CreatedDate) 

모든 작동, 그래서 나는이 버그가 될 것 같아요 DynamicLinq 또는 나는 그것을 잘못하고 있어요 ...

아이디어가 있으십니까?

+0

동적 linq 코드 게시 ... –

답변

3

동적 인 Linq는 Reflection을 많이 사용합니다. 속성이 internal으로 표시되고 <Type>.GetProperty 메서드 (동적 Linq 라이브러리에서 사용됨)가 internal 속성을 보지 못하기 때문에 BindingFlags을 적용하지 않는 것이 문제 일 수 있습니다.

공개적으로 표시하고 클래스에 표시해보세요.