Expression.Property Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Erstellt eine MemberExpression, die den Zugriff auf eine Eigenschaft darstellt.
Überlädt
Property(Expression, String, Expression[]) |
Erstellt eine IndexExpression, die den Zugriff auf eine indizierte Eigenschaft darstellt. |
Property(Expression, PropertyInfo, Expression[]) |
Erstellt eine IndexExpression, die den Zugriff auf eine indizierte Eigenschaft darstellt. |
Property(Expression, PropertyInfo, IEnumerable<Expression>) |
Erstellt eine IndexExpression, die den Zugriff auf eine indizierte Eigenschaft darstellt. |
Property(Expression, Type, String) |
Erstellt eine MemberExpression, die auf eine Eigenschaft zugreift. |
Property(Expression, PropertyInfo) |
Erstellt eine MemberExpression, die den Zugriff auf eine Eigenschaft darstellt. |
Property(Expression, MethodInfo) |
Erstellt eine MemberExpression, die den Zugriff auf eine Eigenschaft durch das Verwenden einer Eigenschaftenzugriffsmethode darstellt. |
Property(Expression, String) |
Erstellt eine MemberExpression, die den Zugriff auf eine Eigenschaft darstellt. |
Property(Expression, String, Expression[])
- Quelle:
- IndexExpression.cs
- Quelle:
- IndexExpression.cs
- Quelle:
- IndexExpression.cs
Erstellt eine IndexExpression, die den Zugriff auf eine indizierte Eigenschaft darstellt.
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);
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
Parameter
- instance
- Expression
Das Objekt, zu dem die Eigenschaft gehört. Wenn die Eigenschaft statisch/freigegeben ist, muss sie NULL sein.
- propertyName
- String
Der Name des Indexers.
- arguments
- Expression[]
Ein Array von Expression-Objekten, die zum Indizieren der Eigenschaft verwendet werden.
Gibt zurück
Der erstellte IndexExpression.
Gilt für:
Property(Expression, PropertyInfo, Expression[])
- Quelle:
- IndexExpression.cs
- Quelle:
- IndexExpression.cs
- Quelle:
- IndexExpression.cs
Erstellt eine IndexExpression, die den Zugriff auf eine indizierte Eigenschaft darstellt.
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);
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
Parameter
- instance
- Expression
Das Objekt, zu dem die Eigenschaft gehört. Wenn die Eigenschaft statisch/freigegeben ist, muss sie NULL sein.
- indexer
- PropertyInfo
Das PropertyInfo, das die zu indizierende Eigenschaft darstellt.
- arguments
- Expression[]
Ein Array von Expression-Objekten, die zum Indizieren der Eigenschaft verwendet werden.
Gibt zurück
Der erstellte IndexExpression.
Gilt für:
Property(Expression, PropertyInfo, IEnumerable<Expression>)
- Quelle:
- IndexExpression.cs
- Quelle:
- IndexExpression.cs
- Quelle:
- IndexExpression.cs
Erstellt eine IndexExpression, die den Zugriff auf eine indizierte Eigenschaft darstellt.
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);
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
Parameter
- instance
- Expression
Das Objekt, zu dem die Eigenschaft gehört. Wenn die Eigenschaft statisch/freigegeben ist, muss sie NULL sein.
- indexer
- PropertyInfo
Das PropertyInfo, das die zu indizierende Eigenschaft darstellt.
- arguments
- IEnumerable<Expression>
Ein IEnumerable<T> von Expression-Objekten, die zum Indizieren der Eigenschaft verwendet werden.
Gibt zurück
Der erstellte IndexExpression.
Gilt für:
Property(Expression, Type, String)
- Quelle:
- MemberExpression.cs
- Quelle:
- MemberExpression.cs
- Quelle:
- MemberExpression.cs
Erstellt eine MemberExpression, die auf eine Eigenschaft zugreift.
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);
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
Parameter
- expression
- Expression
Das enthaltende Objekt der Eigenschaft. Dies kann für statische Eigenschaften NULL sein.
- propertyName
- String
Die Eigenschaft, auf die zugegriffen werden soll.
Gibt zurück
Der erstellte MemberExpression.
Gilt für:
Property(Expression, PropertyInfo)
- Quelle:
- MemberExpression.cs
- Quelle:
- MemberExpression.cs
- Quelle:
- MemberExpression.cs
Erstellt eine MemberExpression, die den Zugriff auf eine Eigenschaft darstellt.
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);
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
Parameter
- expression
- Expression
Ein Expression, auf den die Expression-Eigenschaft festgelegt werden soll. Dies kann für statische Eigenschaften NULL sein.
- property
- PropertyInfo
Die PropertyInfo, auf das die Member-Eigenschaft festgelegt werden soll.
Gibt zurück
Ein MemberExpression, bei dem die NodeType-Eigenschaft gleich MemberAccess ist und die Expression-Eigenschaft sowie die Member-Eigenschaft auf die angegebenen Werte festgelegt sind.
Ausnahmen
property
ist null
.
- oder -
Die durch property
dargestellte Eigenschaft ist nicht static
(Shared
in Visual Basic), und expression
ist null
.
expression
.Type kann nicht dem deklarierenden Typ des Felds zugeordnet werden, das durch property
dargestellt wird.
Hinweise
Die Type -Eigenschaft des resultierenden MemberExpression ist gleich der PropertyType -Eigenschaft von Member.
Wenn die von dargestellte property
Eigenschaft (Shared
in Visual Basic) ist static
, expression
kann dies seinnull
.
Gilt für:
Property(Expression, MethodInfo)
- Quelle:
- MemberExpression.cs
- Quelle:
- MemberExpression.cs
- Quelle:
- MemberExpression.cs
Erstellt eine MemberExpression, die den Zugriff auf eine Eigenschaft durch das Verwenden einer Eigenschaftenzugriffsmethode darstellt.
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);
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
Parameter
- expression
- Expression
Ein Expression, auf den die Expression-Eigenschaft festgelegt werden soll. Dies kann für statische Eigenschaften NULL sein.
- propertyAccessor
- MethodInfo
Die MethodInfo, die eine Eigenschaftenzugriffsmethode darstellt.
Gibt zurück
Eine MemberExpression, bei der die NodeType-Eigenschaft gleich MemberAccess ist, die Expression-Eigenschaft auf expression
festgelegt ist und die Member-Eigenschaft auf die PropertyInfo festgelegt ist, die die Eigenschaft darstellt, auf die in propertyAccessor
zugegriffen wird.
Ausnahmen
propertyAccessor
ist null
.
- oder -
Die durch propertyAccessor
dargestellte Methode ist nicht static
(Shared
in Visual Basic), und expression
ist null
.
expression
.Type kann dem deklarierenden Typ der durch propertyAccessor
dargestellten Methode nicht zugewiesen werden.
- oder -
Die durch propertyAccessor
dargestellte Methode ist keine Eigenschaftenaccessormethode.
Hinweise
Die Type -Eigenschaft des resultierenden MemberExpression ist gleich der PropertyType -Eigenschaft von Member.
Wenn die von dargestellte propertyAccessor
Methode (Shared
in Visual Basic) ist static
, expression
kann dies seinnull
.
Gilt für:
Property(Expression, String)
- Quelle:
- MemberExpression.cs
- Quelle:
- MemberExpression.cs
- Quelle:
- MemberExpression.cs
Erstellt eine MemberExpression, die den Zugriff auf eine Eigenschaft darstellt.
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
Parameter
- expression
- Expression
Eine Expression, deren Type eine Eigenschaft namens propertyName
enthält. Dies kann für statische Eigenschaften null
sein.
- propertyName
- String
Der Name der Eigenschaft, auf die zugegriffen werden soll.
Gibt zurück
Eine MemberExpression, bei der die NodeType-Eigenschaft gleich MemberAccess ist, die Expression-Eigenschaft auf expression
festgelegt ist und die Member-Eigenschaft auf die PropertyInfo festgelegt ist, die die durch propertyName
angegebene Eigenschaft darstellt.
Ausnahmen
expression
oder propertyName
ist null
.
In propertyName
.Type oder den entsprechenden Basistypen ist keine Eigenschaft mit dem Namen expression
definiert.
Beispiele
Das folgende Beispiel zeigt, wie Sie einen Ausdruck erstellen, der den Zugriff auf eine Eigenschaft darstellt.
// 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
Hinweise
Die Type Eigenschaft des resultierenden MemberExpression ist gleich der PropertyType Eigenschaft von, die PropertyInfo die durch propertyName
bezeichnete Eigenschaft darstellt.
Diese Methode durchsucht expression
. Geben Sie und die zugehörigen Basistypen für eine Eigenschaft ein, die den Namen propertyName
hat. Öffentliche Eigenschaften werden gegenüber nicht öffentlichen Eigenschaften bevorzugt. Wenn eine übereinstimmende Eigenschaft gefunden wird, übergibt expression
diese Methode und die, die PropertyInfo diese Eigenschaft darstellt, an Property.