Compartir vía


Expression.Field Método

Definición

Crea un MemberExpression objeto que representa el acceso a un campo.

Sobrecargas

Nombre Description
Field(Expression, FieldInfo)

Crea un MemberExpression objeto que representa el acceso a un campo.

Field(Expression, String)

Crea un MemberExpression objeto que representa el acceso a un campo según el nombre del campo.

Field(Expression, Type, String)

Crea un MemberExpression objeto que representa el acceso a un campo.

Field(Expression, FieldInfo)

Source:
MemberExpression.cs
Source:
MemberExpression.cs
Source:
MemberExpression.cs
Source:
MemberExpression.cs
Source:
MemberExpression.cs

Crea un MemberExpression objeto que representa el acceso a un campo.

public:
 static System::Linq::Expressions::MemberExpression ^ Field(System::Linq::Expressions::Expression ^ expression, System::Reflection::FieldInfo ^ field);
public static System.Linq.Expressions.MemberExpression Field(System.Linq.Expressions.Expression expression, System.Reflection.FieldInfo field);
public static System.Linq.Expressions.MemberExpression Field(System.Linq.Expressions.Expression? expression, System.Reflection.FieldInfo field);
static member Field : System.Linq.Expressions.Expression * System.Reflection.FieldInfo -> System.Linq.Expressions.MemberExpression
Public Shared Function Field (expression As Expression, field As FieldInfo) As MemberExpression

Parámetros

expression
Expression

que Expression se va a establecer la Expression propiedad igual a. Para static (Shared en Visual Basic), expression debe ser null.

field
FieldInfo

que FieldInfo se va a establecer la Member propiedad igual a.

Devoluciones

que MemberExpression tiene la NodeType propiedad igual a MemberAccess y las Expression propiedades y Member establecidas en los valores especificados.

Excepciones

field es null.

O bien

El campo representado por field no es (Shared en Visual Basic) y expression es nullstatic .

expression. El tipo no se puede asignar al tipo de declaración del campo representado por field.

Comentarios

La Type propiedad del resultado MemberExpression es igual a la FieldType propiedad de field.

Se aplica a

Field(Expression, String)

Source:
MemberExpression.cs
Source:
MemberExpression.cs
Source:
MemberExpression.cs
Source:
MemberExpression.cs
Source:
MemberExpression.cs

Crea un MemberExpression objeto que representa el acceso a un campo según el nombre del campo.

public:
 static System::Linq::Expressions::MemberExpression ^ Field(System::Linq::Expressions::Expression ^ expression, System::String ^ fieldName);
public static System.Linq.Expressions.MemberExpression Field(System.Linq.Expressions.Expression expression, string fieldName);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Creating Expressions requires unreferenced code because the members being referenced by the Expression may be trimmed.")]
public static System.Linq.Expressions.MemberExpression Field(System.Linq.Expressions.Expression expression, string fieldName);
static member Field : System.Linq.Expressions.Expression * string -> System.Linq.Expressions.MemberExpression
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Creating Expressions requires unreferenced code because the members being referenced by the Expression may be trimmed.")>]
static member Field : System.Linq.Expressions.Expression * string -> System.Linq.Expressions.MemberExpression
Public Shared Function Field (expression As Expression, fieldName As String) As MemberExpression

Parámetros

expression
Expression

Expression cuyo valor Type contiene un campo denominado fieldName. Puede ser null para los campos estáticos.

fieldName
String

Nombre de un campo al que se va a tener acceso.

Devoluciones

que MemberExpression tiene la NodeType propiedad igual a MemberAccess, la Expression propiedad establecida expressionen y la Member propiedad establecida en el FieldInfo objeto que representa el campo indicado por fieldName.

Atributos

Excepciones

expression o fieldName es null.

No se define ningún campo denominado fieldName en expression. Escriba o sus tipos base.

Ejemplos

En el ejemplo de código siguiente se muestra cómo crear una expresión que represente el acceso a un campo.

// Add the following directive to your file:
// using System.Linq.Expressions;

class TestFieldClass
{
    int sample = 40;
}

static void TestField()
{
    TestFieldClass obj = new TestFieldClass();

    // This expression represents accessing a field.
    // For static fields, the first parameter must be null.
    Expression fieldExpr = Expression.Field(
        Expression.Constant(obj),
        "sample"
    );

    // The following statement first creates an expression tree,
    // then compiles it, and then runs it.
    Console.WriteLine(Expression.Lambda<Func<int>>(fieldExpr).Compile()());
}

// This code example produces the following output:
//
// 40
' Add the following directive to your file:
' Imports System.Linq.Expressions

Class TestFieldClass
    Dim sample As Integer = 40
End Class

Sub TestField()

    Dim obj As New TestFieldClass()

    ' This expression represents accessing a field.
    ' For static fields, the first parameter must be Nothing.
    Dim fieldExpr As Expression = Expression.Field(
          Expression.Constant(obj),
          "sample"
      )

    ' The following statement first creates an expression tree,
    ' then compiles it, and then runs it.
    Console.WriteLine(Expression.Lambda(Of Func(Of Integer))(fieldExpr).Compile()())
End Sub

' This code example produces the following output:
'
' 40

Comentarios

La Type propiedad del resultado MemberExpression es igual a la FieldType propiedad de que FieldInfo representa el campo indicado por fieldName.

Este método busca expressionen . Escriba y sus tipos base para un campo que tenga el nombre fieldName. A los campos públicos se les da preferencia sobre los campos no públicos. Si se encuentra un campo coincidente, este método pasa expression y el FieldInfo que representa ese campo a Field.

Se aplica a

Field(Expression, Type, String)

Source:
MemberExpression.cs
Source:
MemberExpression.cs
Source:
MemberExpression.cs
Source:
MemberExpression.cs
Source:
MemberExpression.cs

Crea un MemberExpression objeto que representa el acceso a un campo.

public:
 static System::Linq::Expressions::MemberExpression ^ Field(System::Linq::Expressions::Expression ^ expression, Type ^ type, System::String ^ fieldName);
public static System.Linq.Expressions.MemberExpression Field(System.Linq.Expressions.Expression expression, Type type, string fieldName);
public static System.Linq.Expressions.MemberExpression Field(System.Linq.Expressions.Expression? expression, Type type, string fieldName);
static member Field : System.Linq.Expressions.Expression * Type * string -> System.Linq.Expressions.MemberExpression
Public Shared Function Field (expression As Expression, type As Type, fieldName As String) As MemberExpression

Parámetros

expression
Expression

Objeto contenedor del campo. Puede ser null para los campos estáticos.

type
Type

Type que contiene el campo .

fieldName
String

Campo al que se va a tener acceso.

Devoluciones

Objeto creado MemberExpression.

Se aplica a