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


MemberExpression Класс

Определение

Представляет получение доступа к полю или свойству.

public ref class MemberExpression : System::Linq::Expressions::Expression
public ref class MemberExpression sealed : System::Linq::Expressions::Expression
public class MemberExpression : System.Linq.Expressions.Expression
public sealed class MemberExpression : System.Linq.Expressions.Expression
type MemberExpression = class
    inherit Expression
Public Class MemberExpression
Inherits Expression
Public NotInheritable Class MemberExpression
Inherits Expression
Наследование
MemberExpression

Примеры

В следующем примере создается объект , MemberExpression представляющий получение значения элемента поля.

class Animal
{
    public string species;
}

public static void CreateFieldExpression()
{
    Animal horse = new Animal();

    // Create a MemberExpression that represents getting
    // the value of the 'species' field of class 'Animal'.
    System.Linq.Expressions.MemberExpression memberExpression =
        System.Linq.Expressions.Expression.Field(
            System.Linq.Expressions.Expression.Constant(horse),
            "species");

    Console.WriteLine(memberExpression.ToString());

    // This code produces the following output:
    //
    // value(CodeSnippets.FieldExample+Animal).species
}
Class Animal
    Dim species As String
End Class

Shared Sub CreateFieldExpression()
    Dim horse As New Animal

    ' Create a MemberExpression that represents getting
    ' the value of the 'species' field of class 'Animal'.
    Dim memberExpression As System.Linq.Expressions.MemberExpression = _
        System.Linq.Expressions.Expression.Field( _
            System.Linq.Expressions.Expression.Constant(horse), _
            "species")

    Console.WriteLine(memberExpression.ToString())

    ' This code produces the following output:
    '
    ' value(ExpressionVB.FieldExample+Animal).species
End Sub

Комментарии

FieldИспользуйте фабричные методы , Property или PropertyOrField , чтобы создать MemberExpression.

Значение NodeType свойства MemberExpression объекта равно MemberAccess.

Свойства

CanReduce

Указывает, что узел можно сократить до более простого. Если возвращается значение true, для получения сокращенной формы можно вызвать Reduce().

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

Получает содержащийся объект поля или свойства.

Member

Получает поле или свойство для доступа.

NodeType

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

NodeType

Получает тип узла данного объекта Expression.

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

Получает статичный тип выражения, представленного этим выражением Expression.

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

Методы

Accept(ExpressionVisitor)

Отправляет в конкретный метод Visit для данного типа узла. Например, объект MethodCallExpression вызывает метод VisitMethodCall(MethodCallExpression).

Accept(ExpressionVisitor)

Отправляет в конкретный метод Visit для данного типа узла. Например, объект MethodCallExpression вызывает метод VisitMethodCall(MethodCallExpression).

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

Определяет, равен ли указанный объект текущему объекту.

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

Служит хэш-функцией по умолчанию.

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

Возвращает объект Type для текущего экземпляра.

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

Создает неполную копию текущего объекта Object.

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

Преобразует данный узел в более простое выражение. Если CanReduce возвращает значение true, данный метод должен вернуть допустимое выражение. Данный метод может вернуть другой узел, который нужно будет преобразовать еще раз.

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

Преобразует данный узел в более простое выражение. Если CanReduce возвращает значение true, данный метод должен вернуть допустимое выражение. Данный метод может вернуть другой узел, который нужно будет преобразовать еще раз.

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

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

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

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

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

Создает новое выражение, аналогичное данному, но с использованием предоставленного дочернего элемента. Если все дочерние элементы совпадают, возвращается данное выражение.

VisitChildren(ExpressionVisitor)

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

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

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