Expression.Property Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
MemberExpression Membuat yang mewakili mengakses properti.
Overload
Property(Expression, String, Expression[]) |
Membuat yang IndexExpression mewakili akses ke properti terindeks. |
Property(Expression, PropertyInfo, Expression[]) |
Membuat yang IndexExpression mewakili akses ke properti terindeks. |
Property(Expression, PropertyInfo, IEnumerable<Expression>) |
Membuat yang IndexExpression mewakili akses ke properti terindeks. |
Property(Expression, Type, String) |
MemberExpression Membuat properti yang mengakses. |
Property(Expression, PropertyInfo) |
MemberExpression Membuat yang mewakili mengakses properti. |
Property(Expression, MethodInfo) |
MemberExpression Membuat yang mewakili mengakses properti dengan menggunakan metode pengaktor properti. |
Property(Expression, String) |
MemberExpression Membuat yang mewakili mengakses properti. |
Property(Expression, String, Expression[])
- Sumber:
- IndexExpression.cs
- Sumber:
- IndexExpression.cs
- Sumber:
- IndexExpression.cs
Membuat yang IndexExpression mewakili akses ke properti terindeks.
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
Objek tempat properti berada. Jika properti statis/dibagikan, properti harus null.
- propertyName
- String
Nama pengindeks.
- arguments
- Expression[]
Array Expression objek yang digunakan untuk mengindeks properti.
Mengembalikan
yang dibuat IndexExpression.
Berlaku untuk
Property(Expression, PropertyInfo, Expression[])
- Sumber:
- IndexExpression.cs
- Sumber:
- IndexExpression.cs
- Sumber:
- IndexExpression.cs
Membuat yang IndexExpression mewakili akses ke properti terindeks.
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
Objek tempat properti berada. Jika properti statis/dibagikan, properti harus null.
- indexer
- PropertyInfo
PropertyInfo yang mewakili properti untuk diindeks.
- arguments
- Expression[]
Array Expression objek yang digunakan untuk mengindeks properti.
Mengembalikan
yang dibuat IndexExpression.
Berlaku untuk
Property(Expression, PropertyInfo, IEnumerable<Expression>)
- Sumber:
- IndexExpression.cs
- Sumber:
- IndexExpression.cs
- Sumber:
- IndexExpression.cs
Membuat yang IndexExpression mewakili akses ke properti terindeks.
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
Objek tempat properti berada. Jika properti statis/dibagikan, properti harus null.
- indexer
- PropertyInfo
PropertyInfo yang mewakili properti untuk diindeks.
- arguments
- IEnumerable<Expression>
Objek IEnumerable<T>Expression yang digunakan untuk mengindeks properti.
Mengembalikan
yang dibuat IndexExpression.
Berlaku untuk
Property(Expression, Type, String)
- Sumber:
- MemberExpression.cs
- Sumber:
- MemberExpression.cs
- Sumber:
- MemberExpression.cs
MemberExpression Membuat properti yang mengakses.
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
Objek yang berisi properti . Ini bisa null untuk properti statis.
- propertyName
- String
Properti yang akan diakses.
Mengembalikan
yang dibuat MemberExpression.
Berlaku untuk
Property(Expression, PropertyInfo)
- Sumber:
- MemberExpression.cs
- Sumber:
- MemberExpression.cs
- Sumber:
- MemberExpression.cs
MemberExpression Membuat yang mewakili mengakses properti.
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
Untuk Expression mengatur properti sama Expression dengan. Ini bisa null untuk properti statis.
- property
- PropertyInfo
PropertyInfo untuk mengatur Member properti sama dengan.
Mengembalikan
MemberExpression yang memiliki NodeType properti yang sama dengan MemberAccess dan Expression properti dan Member diatur ke nilai yang ditentukan.
Pengecualian
property
adalah null
.
-atau-
Properti yang property
mewakili bukan static
(Shared
dalam Visual Basic) dan expression
adalah null
.
expression
. Tipe tidak dapat ditetapkan ke tipe deklarasikan properti yang property
mewakili.
Keterangan
Properti Type dari yang dihasilkan MemberExpression sama dengan PropertyType properti dari Member.
Jika properti yang diwakili oleh property
adalah static
(Shared
dalam Visual Basic), expression
bisa berupa null
.
Berlaku untuk
Property(Expression, MethodInfo)
- Sumber:
- MemberExpression.cs
- Sumber:
- MemberExpression.cs
- Sumber:
- MemberExpression.cs
MemberExpression Membuat yang mewakili mengakses properti dengan menggunakan metode pengaktor properti.
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
Untuk Expression mengatur properti sama Expression dengan. Ini bisa null untuk properti statis.
- propertyAccessor
- MethodInfo
MethodInfo yang mewakili metode pengaktor properti.
Mengembalikan
yang memiliki NodeType properti yang sama dengan MemberAccess, Expression properti diatur ke expression
dan Member properti diatur ke PropertyInfo yang mewakili properti yang diakses di propertyAccessor
.MemberExpression
Pengecualian
propertyAccessor
adalah null
.
-atau-
Metode yang propertyAccessor
mewakili bukan static
(Shared
dalam Visual Basic) dan expression
adalah null
.
expression
. Jenis tidak dapat ditetapkan ke jenis deklarasi metode yang diwakili oleh propertyAccessor
.
-atau-
Metode yang propertyAccessor
mewakili bukan metode pengaktor properti.
Keterangan
Properti Type dari yang dihasilkan MemberExpression sama dengan PropertyType properti dari Member.
Jika metode yang diwakili oleh propertyAccessor
adalah static
(Shared
dalam Visual Basic), expression
bisa berupa null
.
Berlaku untuk
Property(Expression, String)
- Sumber:
- MemberExpression.cs
- Sumber:
- MemberExpression.cs
- Sumber:
- MemberExpression.cs
MemberExpression Membuat yang mewakili mengakses properti.
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
Type Yang Expression berisi properti bernama propertyName
. Ini bisa null
untuk properti statis.
- propertyName
- String
Nama properti yang akan diakses.
Mengembalikan
MemberExpression yang memiliki NodeType properti yang sama dengan MemberAccess, Expression properti diatur ke expression
, dan Member properti diatur ke PropertyInfo yang mewakili properti yang ditandai dengan propertyName
.
Pengecualian
expression
atau propertyName
adalah null
.
Tidak ada properti bernama propertyName
yang didefinisikan dalam expression
. Jenis atau jenis dasarnya.
Contoh
Contoh berikut menunjukkan cara membuat ekspresi yang mewakili mengakses properti.
// 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
Keterangan
Properti Type dari yang dihasilkan MemberExpression sama dengan PropertyType properti dari PropertyInfo yang mewakili properti yang ditandai dengan propertyName
.
Metode ini mencari expression
. Jenis dan jenis dasarnya untuk properti yang memiliki nama propertyName
. Properti publik diberikan preferensi atas properti non-publik. Jika properti yang cocok ditemukan, metode ini lolos expression
dan yang mewakili properti tersebut PropertyInfo ke Property.