Expression.Field Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Crea un oggetto MemberExpression che rappresenta l'accesso a un campo.
Overload
Field(Expression, FieldInfo) |
Crea un oggetto MemberExpression che rappresenta l'accesso a un campo. |
Field(Expression, String) |
Crea un oggetto MemberExpression che rappresenta l'accesso a un campo, dato il nome del campo. |
Field(Expression, Type, String) |
Crea un oggetto MemberExpression che rappresenta l'accesso a un campo. |
Field(Expression, FieldInfo)
- Origine:
- MemberExpression.cs
- Origine:
- MemberExpression.cs
- Origine:
- MemberExpression.cs
Crea un oggetto MemberExpression che rappresenta l'accesso 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
Parametri
- expression
- Expression
Oggetto Expression su cui impostare la proprietà Expression. Per static
(Shared
in Visual Basic), expression
deve essere null
.
Restituisce
Oggetto MemberExpression la cui proprietà NodeType è uguale a MemberAccess e le cui proprietà Expression e Member sono impostate sui valori specificati.
Eccezioni
field
è null
.
-oppure-
Il campo rappresentato da field
non è static
(Shared
in Visual Basic) e expression
è null
.
expression
.Type non è assegnabile al tipo dichiarante del campo rappresentato da field
.
Commenti
La Type proprietà del risultato MemberExpression è uguale alla FieldType proprietà di field
.
Si applica a
Field(Expression, String)
- Origine:
- MemberExpression.cs
- Origine:
- MemberExpression.cs
- Origine:
- MemberExpression.cs
Crea un oggetto MemberExpression che rappresenta l'accesso a un campo, dato il nome 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);
static member Field : System.Linq.Expressions.Expression * string -> System.Linq.Expressions.MemberExpression
Public Shared Function Field (expression As Expression, fieldName As String) As MemberExpression
Parametri
- expression
- Expression
Oggetto Expression la cui proprietà Type contiene un campo denominato fieldName
. Può essere Null per i campi statici.
- fieldName
- String
Nome di un campo a cui accedere.
Restituisce
Oggetto MemberExpression la cui proprietà NodeType è uguale a MemberAccess, la cui proprietà Expression è impostata su expression
e la cui proprietà Member è impostata sull'oggetto FieldInfo che rappresenta il campo identificato da fieldName
.
Eccezioni
expression
o fieldName
è null
.
Nessun campo denominato fieldName
è definito in expression
.Type o nei relativi tipi di base.
Esempio
Nell'esempio di codice seguente viene illustrato come creare un'espressione che rappresenta l'accesso 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
Commenti
La Type proprietà del risultato MemberExpression è uguale alla FieldType proprietà dell'oggetto FieldInfo che rappresenta il campo denotato da fieldName
.
Questo metodo cerca expression
. Digitare e i relativi tipi di base per un campo con il nome fieldName
. I campi pubblici hanno la preferenza sui campi non pubblici. Se viene trovato un campo corrispondente, questo metodo passa expression
e l'oggetto che rappresenta tale FieldInfo campo su Field.
Si applica a
Field(Expression, Type, String)
- Origine:
- MemberExpression.cs
- Origine:
- MemberExpression.cs
- Origine:
- MemberExpression.cs
Crea un oggetto MemberExpression che rappresenta l'accesso 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
Parametri
- expression
- Expression
Oggetto contenitore del campo. Può essere Null per i campi statici.
- fieldName
- String
Campo al quale accedere.
Restituisce
Oggetto MemberExpression creato.