다음을 통해 공유


DynamicExpression 클래스

정의

동적 작업을 나타냅니다.

public ref class DynamicExpression : System::Linq::Expressions::Expression, System::Linq::Expressions::IDynamicExpression
public ref class DynamicExpression : System::Linq::Expressions::Expression
public class DynamicExpression : System.Linq.Expressions.Expression, System.Linq.Expressions.IDynamicExpression
public class DynamicExpression : System.Linq.Expressions.Expression
type DynamicExpression = class
    inherit Expression
    interface IArgumentProvider
    interface IDynamicExpression
type DynamicExpression = class
    inherit Expression
type DynamicExpression = class
    inherit Expression
    interface IDynamicExpression
    interface IArgumentProvider
Public Class DynamicExpression
Inherits Expression
Implements IDynamicExpression
Public Class DynamicExpression
Inherits Expression
상속
DynamicExpression
구현

속성

Arguments

동적 작업의 인수를 가져옵니다.

Binder

동적 사이트의 런타임 동작을 결정하는 CallSiteBinder를 가져옵니다.

CanReduce

노드를 더 단순한 노드로 줄일 수 있는지 나타냅니다. true를 반환하면 Reduce()를 호출하여 축소된 형식을 만들 수 있습니다.

(다음에서 상속됨 Expression)
DelegateType

CallSite에서 사용하는 대리자의 형식을 가져옵니다.

NodeType

이 식의 노드 형식을 반환합니다. 확장 노드는 이 메서드를 재정의할 때 Extension을 반환해야 합니다.

Type

Expression이 나타내는 식의 정적 형식을 가져옵니다.

메서드

Accept(ExpressionVisitor)

이 노드 형식에 대한 특정 Visit 메서드로 디스패치합니다. 예를 들어 MethodCallExpressionVisitMethodCall(MethodCallExpression)을 호출합니다.

Dynamic(CallSiteBinder, Type, Expression)

제공된 DynamicExpression에 의해 바인딩된 동적 작업을 나타내는 CallSiteBinder을 만듭니다.

Dynamic(CallSiteBinder, Type, Expression, Expression)

제공된 DynamicExpression에 의해 바인딩된 동적 작업을 나타내는 CallSiteBinder을 만듭니다.

Dynamic(CallSiteBinder, Type, Expression, Expression, Expression)

제공된 DynamicExpression에 의해 바인딩된 동적 작업을 나타내는 CallSiteBinder을 만듭니다.

Dynamic(CallSiteBinder, Type, Expression, Expression, Expression, Expression)

제공된 DynamicExpression에 의해 바인딩된 동적 작업을 나타내는 CallSiteBinder을 만듭니다.

Dynamic(CallSiteBinder, Type, Expression[])

제공된 DynamicExpression에 의해 바인딩된 동적 작업을 나타내는 CallSiteBinder을 만듭니다.

Dynamic(CallSiteBinder, Type, IEnumerable<Expression>)

제공된 DynamicExpression에 의해 바인딩된 동적 작업을 나타내는 CallSiteBinder을 만듭니다.

Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
MakeDynamic(Type, CallSiteBinder, Expression)

제공된 DynamicExpression 및 1개 인수에 의해 바인딩된 동적 작업을 나타내는 CallSiteBinder을 만듭니다.

MakeDynamic(Type, CallSiteBinder, Expression, Expression)

제공된 DynamicExpression 및 2개 인수에 의해 바인딩된 동적 작업을 나타내는 CallSiteBinder을 만듭니다.

MakeDynamic(Type, CallSiteBinder, Expression, Expression, Expression)

제공된 DynamicExpression 및 3개 인수에 의해 바인딩된 동적 작업을 나타내는 CallSiteBinder을 만듭니다.

MakeDynamic(Type, CallSiteBinder, Expression, Expression, Expression, Expression)

제공된 DynamicExpression 및 4개 인수에 의해 바인딩된 동적 작업을 나타내는 CallSiteBinder을 만듭니다.

MakeDynamic(Type, CallSiteBinder, Expression[])

제공된 DynamicExpression에 의해 바인딩된 동적 작업을 나타내는 CallSiteBinder을 만듭니다.

MakeDynamic(Type, CallSiteBinder, IEnumerable<Expression>)

제공된 DynamicExpression에 의해 바인딩된 동적 작업을 나타내는 CallSiteBinder을 만듭니다.

MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
Reduce()

이 노드를 더 단순한 식으로 줄입니다. CanReduce가 true를 반환하면 유효한 식을 반환합니다. 이 메서드는 자체를 줄여야 하는 다른 노드를 반환할 수 있습니다.

(다음에서 상속됨 Expression)
ReduceAndCheck()

이 노드를 더 단순한 식으로 줄입니다. CanReduce가 true를 반환하면 유효한 식을 반환합니다. 이 메서드는 자체를 줄여야 하는 다른 노드를 반환할 수 있습니다.

(다음에서 상속됨 Expression)
ReduceExtensions()

알려진 노드 형식(확장 노드가 아님)으로 식을 줄이거나 이미 알려진 형식인 경우 식을 반환합니다.

(다음에서 상속됨 Expression)
ToString()

Expression의 텍스트 표현을 반환합니다.

(다음에서 상속됨 Expression)
Update(IEnumerable<Expression>)

매개 변수 arguments로 보낸 값을 Arguments의 현재 인스턴스의 DynamicExpression 속성과 비교합니다. 매개 변수 및 속성의 값이 같으면 현재 인스턴스가 반환됩니다. 인스턴스가 일치하지 않으면 DynamicExpression 속성이 매개 변수 arguments의 값으로 설정되는 경우를 제외하고 현재 인스턴스와 동일한 새 Arguments 인스턴스가 반환됩니다.

VisitChildren(ExpressionVisitor)

노드를 줄인 다음 줄인 식에서 방문자 대리자를 호출합니다. 이 메서드는 노드를 줄일 수 없으면 예외를 throw합니다.

(다음에서 상속됨 Expression)

명시적 인터페이스 구현

IArgumentProvider.ArgumentCount

인수 수를 식 트리 노드에 반환합니다. 이 멤버를 사용하지 않아야 합니다. 어셈블리 리팩터링으로 인해 공용으로만 사용되며 성능 최적화를 위해 내부적으로 사용됩니다.

IArgumentProvider.GetArgument(Int32)

인덱스에서 인수를 반환하며 인덱스가 범위를 벗어나는 경우 throw합니다. 이 멤버를 사용하지 않아야 합니다. 어셈블리 리팩터링으로 인해 공용으로만 사용되며 성능 최적화를 위해 내부적으로 사용됩니다.

IDynamicExpression.CreateCallSite()

선택적으로 호출 사이트를 만들고 DynamicExpression의 다형 형식 인라인 캐시용 호출 사이트를 반환합니다. 이 멤버를 사용하지 않아야 합니다. 어셈블리 리팩터링으로 인해 공용으로만 사용되며 성능 최적화를 위해 내부적으로 사용됩니다.

IDynamicExpression.Rewrite(Expression[])

제공된 값으로 동적 식의 인수를 바꾸어 이 노드를 다시 씁니다. args의 숫자가 현재 식의 숫자와 일치해야 합니다. 이 형식은 사용하지 않아야 합니다. 어셈블리 리팩터링으로 인해 공용으로만 사용되며 성능 최적화를 위해 내부적으로 사용됩니다. 이 도우미 메서드를 사용하면 호출 사이트에서 사용되는 DynamicExpression에서 파생된 특정 구현 클래스와 독립적으로 노드를 다시 작성할 수 있습니다.

적용 대상