표현에 Func을
Func<MyClass, bool> func = x=>Id == 5;
내가로 변환 할 수 있습니다 방법 :
Expression<Func<MyClass, bool>>
표현에 Func을
Func<MyClass, bool> func = x=>Id == 5;
내가로 변환 할 수 있습니다 방법 :
Expression<Func<MyClass, bool>>
이 시도를 :
Func<MyClass, bool> func = x=>Id == 5;
Expression<Func<MyClass, bool>> expr = mc => func(mc);
사용자가 만든 대리인에 대한 호출을 나타내는 식을 만들 수 있습니다. 하지만 대개의 경우 Expression
을 사용할 때 코드를 이해하는 것이 좋습니다 (예 : SQL로 변환). 그리고 불투명 한 함수를 호출하는 표현식으로는 그렇게 할 수 없습니다.
당신은 쓸 수 있습니다 :
Expression<Func<MyClass,bool>> expr = x=>Id == 5;
이 Id == 5
에 대한 식 트리로 expr
을 설정합니다.
당신이 할 경우
Func<MyClass, bool> func = x=>Id == 5;
Expression<Func<MyClass, bool>> expr = mc => func(mc);
그런 다음이 func
를 호출하는 식 트리로 expr
을 설정합니다, func
의 몸이 아닌 식 트리.
표현식은 람다 함수의 중간 표현입니다. Func은 컴파일 된 람다 함수입니다. 두 사람을 회심시킬 수 있다고 생각하지 마십시오. 왜 그럴 필요가 있니? – akhisp