Expression.Property Metoda

Definicja

Tworzy obiekt MemberExpression reprezentujący dostęp do właściwości.

Przeciążenia

Property(Expression, String, Expression[])

Tworzy obiekt IndexExpression reprezentujący dostęp do indeksowanej właściwości.

Property(Expression, PropertyInfo, Expression[])

Tworzy obiekt IndexExpression reprezentujący dostęp do indeksowanej właściwości.

Property(Expression, PropertyInfo, IEnumerable<Expression>)

Tworzy obiekt IndexExpression reprezentujący dostęp do indeksowanej właściwości.

Property(Expression, Type, String)

Tworzy dostęp MemberExpression do właściwości.

Property(Expression, PropertyInfo)

Tworzy obiekt MemberExpression reprezentujący dostęp do właściwości.

Property(Expression, MethodInfo)

Tworzy obiekt MemberExpression reprezentujący dostęp do właściwości przy użyciu metody dostępu do właściwości.

Property(Expression, String)

Tworzy obiekt MemberExpression reprezentujący dostęp do właściwości.

Property(Expression, String, Expression[])

Źródło:
IndexExpression.cs
Źródło:
IndexExpression.cs
Źródło:
IndexExpression.cs

Tworzy obiekt IndexExpression reprezentujący dostęp do indeksowanej właściwości.

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

Parametry

instance
Expression

Obiekt, do którego należy właściwość. Jeśli właściwość jest statyczna/udostępniona, musi mieć wartość null.

propertyName
String

Nazwa indeksatora.

arguments
Expression[]

Tablica Expression obiektów, które są używane do indeksowania właściwości.

Zwraca

Utworzony element IndexExpression.

Dotyczy

Property(Expression, PropertyInfo, Expression[])

Źródło:
IndexExpression.cs
Źródło:
IndexExpression.cs
Źródło:
IndexExpression.cs

Tworzy obiekt IndexExpression reprezentujący dostęp do indeksowanej właściwości.

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

Parametry

instance
Expression

Obiekt, do którego należy właściwość. Jeśli właściwość jest statyczna/udostępniona, musi mieć wartość null.

indexer
PropertyInfo

Właściwość PropertyInfo reprezentująca właściwość do indeksowania.

arguments
Expression[]

Tablica Expression obiektów, które są używane do indeksowania właściwości.

Zwraca

Utworzony element IndexExpression.

Dotyczy

Property(Expression, PropertyInfo, IEnumerable<Expression>)

Źródło:
IndexExpression.cs
Źródło:
IndexExpression.cs
Źródło:
IndexExpression.cs

Tworzy obiekt IndexExpression reprezentujący dostęp do indeksowanej właściwości.

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

Parametry

instance
Expression

Obiekt, do którego należy właściwość. Jeśli właściwość jest statyczna/udostępniona, musi mieć wartość null.

indexer
PropertyInfo

Właściwość PropertyInfo reprezentująca właściwość do indeksowania.

arguments
IEnumerable<Expression>

Expression Obiekt IEnumerable<T> używany do indeksowania właściwości.

Zwraca

Utworzony element IndexExpression.

Dotyczy

Property(Expression, Type, String)

Źródło:
MemberExpression.cs
Źródło:
MemberExpression.cs
Źródło:
MemberExpression.cs

Tworzy dostęp MemberExpression do właściwości.

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

Parametry

expression
Expression

Obiekt zawierający właściwość . Może to być wartość null dla właściwości statycznych.

type
Type

Obiekt Type , który zawiera właściwość .

propertyName
String

Dostęp do właściwości.

Zwraca

Utworzony element MemberExpression.

Dotyczy

Property(Expression, PropertyInfo)

Źródło:
MemberExpression.cs
Źródło:
MemberExpression.cs
Źródło:
MemberExpression.cs

Tworzy obiekt MemberExpression reprezentujący dostęp do właściwości.

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

Parametry

expression
Expression

Element Expression do ustawiania Expression właściwości równej. Może to być wartość null dla właściwości statycznych.

property
PropertyInfo

Właściwość PropertyInfo , aby ustawić właściwość równą Member .

Zwraca

Właściwość MemberExpression , która ma właściwość równą MemberAccessNodeType i Expression właściwości i Member ustawione na określone wartości.

Wyjątki

property to null.

-lub-

Właściwość, która reprezentuje, property nie static jest (Shared w Visual Basic) i expression ma wartość null.

expression. Typ nie jest przypisywany do deklarowanego typu właściwości, która property reprezentuje.

Uwagi

Właściwość Type wynikowej MemberExpression jest równa PropertyType właściwości .Member

Jeśli właściwość reprezentowana przez property element to static (Shared w Visual Basic), expression może to być null.

Dotyczy

Property(Expression, MethodInfo)

Źródło:
MemberExpression.cs
Źródło:
MemberExpression.cs
Źródło:
MemberExpression.cs

Tworzy obiekt MemberExpression reprezentujący dostęp do właściwości przy użyciu metody dostępu do właściwości.

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

Parametry

expression
Expression

Element Expression do ustawiania Expression właściwości równej. Może to być wartość null dla właściwości statycznych.

propertyAccessor
MethodInfo

Element MethodInfo reprezentujący metodę dostępu do właściwości.

Zwraca

Właściwość MemberExpression , która ma właściwość równą MemberAccessNodeType , Expression właściwość ustawiona na expression i Member właściwość ustawioną na PropertyInfo właściwość reprezentującą właściwość dostępną w obiekcie propertyAccessor.

Wyjątki

propertyAccessor to null.

-lub-

Metoda, która propertyAccessor reprezentuje, nie static jest (Shared w Visual Basic) i expression ma wartość null.

expression. Typ nie jest przypisywany do deklarowanego typu metody reprezentowanej przez propertyAccessor.

-lub-

Metoda, która reprezentuje, propertyAccessor nie jest metodą dostępu do właściwości.

Uwagi

Właściwość Type wynikowej MemberExpression jest równa PropertyType właściwości .Member

Jeśli metoda reprezentowana przez propertyAccessor element to static (Shared w Visual Basic), expression może to być null.

Dotyczy

Property(Expression, String)

Źródło:
MemberExpression.cs
Źródło:
MemberExpression.cs
Źródło:
MemberExpression.cs

Tworzy obiekt MemberExpression reprezentujący dostęp do właściwości.

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

Parametry

expression
Expression

Obiekt Expression , którego Type zawiera właściwość o nazwie propertyName. Może to dotyczyć null właściwości statycznych.

propertyName
String

Nazwa właściwości, do których ma być uzyskiwany dostęp.

Zwraca

Właściwość MemberExpression , która ma właściwość równą MemberAccessNodeType , Expression właściwość ustawiona na expression, a Member właściwość ustawiona na PropertyInfo właściwość , która reprezentuje właściwość oznaczona przez propertyName.

Wyjątki

expression lub propertyName ma wartość null.

W elemecie expressionnie zdefiniowano żadnej właściwości o nazwie propertyName . Typ lub jego typy podstawowe.

Przykłady

W poniższym przykładzie pokazano, jak utworzyć wyrażenie reprezentujące dostęp do właściwości.

// 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

Uwagi

Właściwość Type wynikowa MemberExpression jest równa PropertyType właściwości PropertyInfo , która reprezentuje właściwość oznaczona przez propertyName.

Ta metoda wyszukuje expressionmetodę . Wpisz i jego typy podstawowe dla właściwości o nazwie propertyName. Właściwości publiczne mają preferencje w przypadku właściwości innych niż publiczne. Jeśli zostanie znaleziona zgodna właściwość, ta metoda zostanie pomyślnie przekazywana expressionPropertyInfo i właściwość reprezentująca tę właściwość na wartość Property.

Dotyczy