Поделиться через


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 для данного типа узла. Например, объект MethodCallExpression вызывает метод VisitMethodCall(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, представляющий динамическую операцию, привязанную с использованием указанного объекта CallSiteBinder и одним аргументом.

MakeDynamic(Type, CallSiteBinder, Expression, Expression)

Создает объект DynamicExpression, представляющий динамическую операцию, привязанную с использованием указанного объекта CallSiteBinder и двумя аргументами.

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

Создает объект DynamicExpression, представляющий динамическую операцию, привязанную с использованием указанного объекта CallSiteBinder и тремя аргументами.

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

Создает объект DynamicExpression, представляющий динамическую операцию, привязанную с использованием указанного объекта 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()

Упрощает выражение до известного типа узла (не являющегося узлом Extension) или возвращает выражение, если оно имеет известный тип.

(Унаследовано от Expression)
ToString()

Возвращает текстовое представление текущего объекта Expression.

(Унаследовано от Expression)
Update(IEnumerable<Expression>)

Сравнивает значение, переданное в параметр arguments, со свойством Arguments текущего экземпляра DynamicExpression. Если значения параметра и свойства равны, возвращается текущий экземпляр. Если они не равны, возвращается новый экземпляр, DynamicExpression идентичный текущему экземпляру, за исключением того, что свойство Arguments имеет значение параметра arguments.

VisitChildren(ExpressionVisitor)

Упрощает узел и вызывает делегат-посетитель для преобразованного выражения. Данный метод создает исключение, если узел невозможно упростить.

(Унаследовано от Expression)

Явные реализации интерфейса

IArgumentProvider.ArgumentCount

Возвращает число аргументов для узла дерева выражения. Не следует использовать этот член. Он является открытым только из-за рефакторинга сборки и используется внутренне для оптимизации производительности.

IArgumentProvider.GetArgument(Int32)

Возвращает аргумент в индексе, создавая исключение, если индекс вне допустимых границ. Не следует использовать этот член. Он является открытым только из-за рефакторинга сборки и используется внутренне для оптимизации производительности.

IDynamicExpression.CreateCallSite()

При необходимости создает CallSite и возвращает этот CallSite для полиморфного встроенного кэша DynamicExpression. Не следует использовать этот член. Он является открытым только из-за рефакторинга сборки и используется внутренне для оптимизации производительности.

IDynamicExpression.Rewrite(Expression[])

Переопределите этот узел, заменив аргументы динамического выражения предоставленными значениями. Количество args должно совпадать с количеством аргументов в текущем выражении. Не следует использовать этот тип. Он является открытым только из-за рефакторинга сборки и используется внутренне для оптимизации производительности. Этот вспомогательный метод позволяет переопределять узлы независимо от конкретной реализации класса, производного от DynamicExpression, который используется на сайте вызова.

Применяется к