컴파일러 오류 CS0835
업데이트: 2007년 11월
오류 메시지
람다 식을 형식 인수 'type'이(가) 대리자 형식이 아닌 식 트리로 변환할 수 없습니다.
Cannot convert lambda to an expression tree whose type argument 'type' is not a delegate type.
람다를 식 트리로 변환하는 경우 식 트리에는 인수에 필요한 대리자 형식이 있어야 합니다. 또한 람다 식을 대리자 형식으로 변환할 수 있어야 합니다.
이 오류를 해결하려면
- 형식 매개 변수를 int에서 Func<int,int>와 같은 대리자 형식으로 변경합니다.
예제
다음 예제에서는 CS0835 오류가 발생하는 경우를 보여 줍니다.
// cs0835.cs
using System;
using System.Linq;
using System.Linq.Expressions;
public class C
{
public static int Main()
{
Expression<int> e = x => x + 1; // CS0835
// Try the following line instead.
// Expression<Func<int,int>> e2 = x => x + 1;
return 1;
}
}