Expression.Property Methode

Definitie

Hiermee maakt u een MemberExpression die toegang geeft tot een eigenschap.

Overloads

Name Description
Property(Expression, String, Expression[])

Hiermee maakt u een IndexExpression weergave van de toegang tot een geïndexeerde eigenschap.

Property(Expression, PropertyInfo, Expression[])

Hiermee maakt u een IndexExpression weergave van de toegang tot een geïndexeerde eigenschap.

Property(Expression, PropertyInfo, IEnumerable<Expression>)

Hiermee maakt u een IndexExpression weergave van de toegang tot een geïndexeerde eigenschap.

Property(Expression, Type, String)

Hiermee maakt u een MemberExpression toegang tot een eigenschap.

Property(Expression, PropertyInfo)

Hiermee maakt u een MemberExpression die toegang geeft tot een eigenschap.

Property(Expression, MethodInfo)

Hiermee maakt u een MemberExpression die toegang geeft tot een eigenschap met behulp van een eigenschapstoegangsmethode.

Property(Expression, String)

Hiermee maakt u een MemberExpression die toegang geeft tot een eigenschap.

Property(Expression, String, Expression[])

Hiermee maakt u een IndexExpression weergave van de toegang tot een geïndexeerde eigenschap.

public:
 static System::Linq::Expressions::IndexExpression ^ Property(System::Linq::Expressions::Expression ^ instance, System::String ^ propertyName, ... cli::array <System::Linq::Expressions::Expression ^> ^ arguments);
public static System.Linq.Expressions.IndexExpression Property(System.Linq.Expressions.Expression instance, string propertyName, params System.Linq.Expressions.Expression[] arguments);
static member Property : System.Linq.Expressions.Expression * string * System.Linq.Expressions.Expression[] -> System.Linq.Expressions.IndexExpression
Public Shared Function Property (instance As Expression, propertyName As String, ParamArray arguments As Expression()) As IndexExpression

Parameters

instance
Expression

Het object waartoe de eigenschap behoort. Als de eigenschap statisch/gedeeld is, moet deze null zijn.

propertyName
String

De naam van de indexeerder.

arguments
Expression[]

Een matrix met Expression objecten die worden gebruikt om de eigenschap te indexeren.

Retouren

De gemaakte IndexExpression.

Van toepassing op

Property(Expression, PropertyInfo, Expression[])

Hiermee maakt u een IndexExpression weergave van de toegang tot een geïndexeerde eigenschap.

public:
 static System::Linq::Expressions::IndexExpression ^ Property(System::Linq::Expressions::Expression ^ instance, System::Reflection::PropertyInfo ^ indexer, ... cli::array <System::Linq::Expressions::Expression ^> ^ arguments);
public static System.Linq.Expressions.IndexExpression Property(System.Linq.Expressions.Expression instance, System.Reflection.PropertyInfo indexer, params System.Linq.Expressions.Expression[] arguments);
static member Property : System.Linq.Expressions.Expression * System.Reflection.PropertyInfo * System.Linq.Expressions.Expression[] -> System.Linq.Expressions.IndexExpression
Public Shared Function Property (instance As Expression, indexer As PropertyInfo, ParamArray arguments As Expression()) As IndexExpression

Parameters

instance
Expression

Het object waartoe de eigenschap behoort. Als de eigenschap statisch/gedeeld is, moet deze null zijn.

indexer
PropertyInfo

De PropertyInfo eigenschap die moet worden geïndexeert.

arguments
Expression[]

Een matrix met Expression objecten die worden gebruikt om de eigenschap te indexeren.

Retouren

De gemaakte IndexExpression.

Van toepassing op

Property(Expression, PropertyInfo, IEnumerable<Expression>)

Hiermee maakt u een IndexExpression weergave van de toegang tot een geïndexeerde eigenschap.

public:
 static System::Linq::Expressions::IndexExpression ^ Property(System::Linq::Expressions::Expression ^ instance, System::Reflection::PropertyInfo ^ indexer, System::Collections::Generic::IEnumerable<System::Linq::Expressions::Expression ^> ^ arguments);
public static System.Linq.Expressions.IndexExpression Property(System.Linq.Expressions.Expression instance, System.Reflection.PropertyInfo indexer, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments);
static member Property : System.Linq.Expressions.Expression * System.Reflection.PropertyInfo * seq<System.Linq.Expressions.Expression> -> System.Linq.Expressions.IndexExpression
Public Shared Function Property (instance As Expression, indexer As PropertyInfo, arguments As IEnumerable(Of Expression)) As IndexExpression

Parameters

instance
Expression

Het object waartoe de eigenschap behoort. Als de eigenschap statisch/gedeeld is, moet deze null zijn.

indexer
PropertyInfo

De PropertyInfo eigenschap die moet worden geïndexeert.

arguments
IEnumerable<Expression>

Een IEnumerable<T> van Expression de objecten die worden gebruikt om de eigenschap te indexeren.

Retouren

De gemaakte IndexExpression.

Van toepassing op

Property(Expression, Type, String)

Hiermee maakt u een MemberExpression toegang tot een eigenschap.

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

Parameters

expression
Expression

Het bijbehorende object van de eigenschap. Dit kan null zijn voor statische eigenschappen.

type
Type

De Type eigenschap die de eigenschap bevat.

propertyName
String

De eigenschap die moet worden geopend.

Retouren

De gemaakte MemberExpression.

Van toepassing op

Property(Expression, PropertyInfo)

Hiermee maakt u een MemberExpression die toegang geeft tot een eigenschap.

public:
 static System::Linq::Expressions::MemberExpression ^ Property(System::Linq::Expressions::Expression ^ expression, System::Reflection::PropertyInfo ^ property);
public static System.Linq.Expressions.MemberExpression Property(System.Linq.Expressions.Expression expression, System.Reflection.PropertyInfo property);
static member Property : System.Linq.Expressions.Expression * System.Reflection.PropertyInfo -> System.Linq.Expressions.MemberExpression
Public Shared Function Property (expression As Expression, property As PropertyInfo) As MemberExpression

Parameters

expression
Expression

Een Expression om de Expression eigenschap in te stellen die gelijk is aan. Dit kan null zijn voor statische eigenschappen.

property
PropertyInfo

Hiermee PropertyInfo stelt u de Member eigenschap in die gelijk is aan.

Retouren

Een MemberExpression met de NodeType eigenschap gelijk aan MemberAccess en de Expression eigenschappen die Member zijn ingesteld op de opgegeven waarden.

Uitzonderingen

property is null.

– of –

De eigenschap die property vertegenwoordigt, is niet static (Shared in Visual Basic) en expression is null.

expression. Het type kan niet worden toegewezen aan het declaratietype van de eigenschap die property vertegenwoordigt.

Opmerkingen

De Type eigenschap van het resulterende MemberExpression is gelijk aan de PropertyType eigenschap van Member.

Als de eigenschap vertegenwoordigd door property is static (Shared in Visual Basic), kan expression worden null.

Van toepassing op

Property(Expression, MethodInfo)

Hiermee maakt u een MemberExpression die toegang geeft tot een eigenschap met behulp van een eigenschapstoegangsmethode.

public:
 static System::Linq::Expressions::MemberExpression ^ Property(System::Linq::Expressions::Expression ^ expression, System::Reflection::MethodInfo ^ propertyAccessor);
public static System.Linq.Expressions.MemberExpression Property(System.Linq.Expressions.Expression expression, System.Reflection.MethodInfo propertyAccessor);
static member Property : System.Linq.Expressions.Expression * System.Reflection.MethodInfo -> System.Linq.Expressions.MemberExpression
Public Shared Function Property (expression As Expression, propertyAccessor As MethodInfo) As MemberExpression

Parameters

expression
Expression

Een Expression om de Expression eigenschap in te stellen die gelijk is aan. Dit kan null zijn voor statische eigenschappen.

propertyAccessor
MethodInfo

De MethodInfo methode die een eigenschapstoegangsmethode vertegenwoordigt.

Retouren

A MemberExpression met de NodeType eigenschap gelijk aan MemberAccess, de Expression eigenschap ingesteld op expression en de Member eigenschap ingesteld op de PropertyInfo eigenschap die de eigenschap vertegenwoordigt die wordt geopend in propertyAccessor.

Uitzonderingen

propertyAccessor is null.

– of –

De methode die propertyAccessor vertegenwoordigt, is niet static (Shared in Visual Basic) en expression is null.

expression. Het type kan niet worden toegewezen aan het declaratietype van de methode die wordt vertegenwoordigd door propertyAccessor.

– of –

De methode die propertyAccessor aangeeft, is geen eigenschapstoegangsmethode.

Opmerkingen

De Type eigenschap van het resulterende MemberExpression is gelijk aan de PropertyType eigenschap van Member.

Als de methode die wordt vertegenwoordigd door propertyAccessorstatic (Shared in Visual Basic), kan expression worden null.

Van toepassing op

Property(Expression, String)

Hiermee maakt u een MemberExpression die toegang geeft tot een eigenschap.

public:
 static System::Linq::Expressions::MemberExpression ^ Property(System::Linq::Expressions::Expression ^ expression, System::String ^ propertyName);
public static System.Linq.Expressions.MemberExpression Property(System.Linq.Expressions.Expression expression, string propertyName);
static member Property : System.Linq.Expressions.Expression * string -> System.Linq.Expressions.MemberExpression
Public Shared Function Property (expression As Expression, propertyName As String) As MemberExpression

Parameters

expression
Expression

Een Expression met Type een eigenschap met de naam propertyName. Dit kan voor statische eigenschappen zijn null .

propertyName
String

De naam van een eigenschap die moet worden geopend.

Retouren

Een MemberExpression met de NodeType eigenschap die gelijk is aan MemberAccess, de Expression eigenschap ingesteld op expressionen de Member eigenschap ingesteld op de PropertyInfo eigenschap die de eigenschap vertegenwoordigt die wordt aangegeven door propertyName.

Uitzonderingen

expression of propertyName is null.

Er is geen eigenschap met de naam propertyName gedefinieerd in expression. Typ of de basistypen.

Voorbeelden

In het volgende voorbeeld ziet u hoe u een expressie maakt die toegang geeft tot een eigenschap.

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

 class TestPropertyClass
 {
     public int sample {get; set;}
 }

 static void TestProperty()
 {
     TestPropertyClass obj = new TestPropertyClass();
     obj.sample = 40;

     // This expression represents accessing a property.
     // For static fields, the first parameter must be null.
     Expression propertyExpr = Expression.Property(
         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>>(propertyExpr).Compile()());
 }

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

Class TestPropertyClass
    Public Property Sample As Integer
End Class

Sub TestProperty()

    Dim obj As New TestPropertyClass()
    obj.Sample = 40

    ' This expression represents accessing a property.
    ' For static properties, the first parameter must be Nothing.
    Dim propertyExpr As Expression = Expression.Property(
          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))(propertyExpr).Compile()())
End Sub

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

Opmerkingen

De Type eigenschap van het resulterende MemberExpression is gelijk aan de PropertyType eigenschap van de PropertyInfo eigenschap die wordt aangeduid door propertyName.

Met deze methode wordt gezocht expression. Typ en de basistypen voor een eigenschap met de naam propertyName. Openbare eigenschappen krijgen voorkeur boven niet-openbare eigenschappen. Als er een overeenkomende eigenschap wordt gevonden, wordt deze methode doorgegeven expression en de PropertyInfo methode die deze eigenschap Propertyaangeeft.

Van toepassing op