Expression.Property Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
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.
- 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.