문제

표현 트리의 개념을 완전히 이해하지만 유용한 상황을 찾는 데 어려움을 겪고 있습니다.표현식 트리를 적용 할 수있는 특정 인스턴스가 있습니까?아니면 코드 전송 메커니즘으로 만 유용합니까?여기에 뭔가 빠진 것 같아요.감사합니다!

도움이 되었습니까?

해결책

<인용구>

아니면 코드 전송 메커니즘으로 만 유용합니까?

코드의 실행 메커니즘 으로 유용합니다. 인터프리터 패턴 을 사용하여 표현식 트리를 직접 해석 할 수 있습니다.구현이 매우 쉽고 빠르기 때문에 유용합니다.이러한 통역사는 어디에나 존재하며 어떤 것도 "해석"하지 않는 것처럼 보이는 경우에도 사용됩니다.중첩 된 구조를 인쇄합니다.

다른 팁

일부 단위 테스트 모의 프레임 워크는 강력한 유형의 기대 / 검증을 설정하기 위해 표현식 트리를 사용합니다.즉 : 라코 디스

여기서 표현은 실제로 실행되지는 않지만 표현 자체는 흥미로운 정보를 담고 있습니다.표현식 트리가없는 대안은 다음과 같습니다. 라코 디스

표현식 트리는 어떤 식 으로든 변경하거나 다시 적용하기 위해 함수 로직에 액세스해야 할 때 유용합니다.

Linq to SQL이 좋은 예입니다. 라코 디스

표현식 트리가 없다면이 문은 모든 레코드를 반환 한 다음 C # where 논리를 각각에 적용해야합니다.

where rec.IntField > 5를 SQL로 파싱 할 수있는 표현식 트리를 사용하면 다음과 같습니다. 라코 디스

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top