Expression.Property 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
속성에 대한 액세스를 나타내는 MemberExpression을 만듭니다.
오버로드
Property(Expression, String, Expression[]) |
인덱싱된 속성에 대한 액세스를 나타내는 IndexExpression을 만듭니다. |
Property(Expression, PropertyInfo, Expression[]) |
인덱싱된 속성에 대한 액세스를 나타내는 IndexExpression을 만듭니다. |
Property(Expression, PropertyInfo, IEnumerable<Expression>) |
인덱싱된 속성에 대한 액세스를 나타내는 IndexExpression을 만듭니다. |
Property(Expression, Type, String) |
속성에 액세스하는 MemberExpression을 만듭니다. |
Property(Expression, PropertyInfo) |
속성에 대한 액세스를 나타내는 MemberExpression을 만듭니다. |
Property(Expression, MethodInfo) |
속성 접근자 메서드를 통한 속성 액세스를 나타내는 MemberExpression을 만듭니다. |
Property(Expression, String) |
속성에 대한 액세스를 나타내는 MemberExpression을 만듭니다. |
Property(Expression, String, Expression[])
- Source:
- IndexExpression.cs
- Source:
- IndexExpression.cs
- Source:
- IndexExpression.cs
인덱싱된 속성에 대한 액세스를 나타내는 IndexExpression을 만듭니다.
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
매개 변수
- instance
- Expression
속성이 속해 있는 개체입니다. 이 속성이 정적/공유 속성이면 null이어야 합니다.
- propertyName
- String
인덱서의 이름입니다.
- arguments
- Expression[]
속성을 인덱싱하는 데 사용되는 Expression 개체의 배열입니다.
반환
만든 IndexExpression입니다.
적용 대상
Property(Expression, PropertyInfo, Expression[])
- Source:
- IndexExpression.cs
- Source:
- IndexExpression.cs
- Source:
- IndexExpression.cs
인덱싱된 속성에 대한 액세스를 나타내는 IndexExpression을 만듭니다.
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
매개 변수
- instance
- Expression
속성이 속해 있는 개체입니다. 이 속성이 정적/공유 속성이면 null이어야 합니다.
- indexer
- PropertyInfo
인덱싱할 속성을 나타내는 PropertyInfo입니다.
- arguments
- Expression[]
속성을 인덱싱하는 데 사용되는 Expression 개체의 배열입니다.
반환
만든 IndexExpression입니다.
적용 대상
Property(Expression, PropertyInfo, IEnumerable<Expression>)
- Source:
- IndexExpression.cs
- Source:
- IndexExpression.cs
- Source:
- IndexExpression.cs
인덱싱된 속성에 대한 액세스를 나타내는 IndexExpression을 만듭니다.
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
매개 변수
- instance
- Expression
속성이 속해 있는 개체입니다. 이 속성이 정적/공유 속성이면 null이어야 합니다.
- indexer
- PropertyInfo
인덱싱할 속성을 나타내는 PropertyInfo입니다.
- arguments
- IEnumerable<Expression>
속성을 인덱싱하는 데 사용되는 IEnumerable<T> 개체의 Expression입니다.
반환
만든 IndexExpression입니다.
적용 대상
Property(Expression, Type, String)
- Source:
- MemberExpression.cs
- Source:
- MemberExpression.cs
- Source:
- MemberExpression.cs
속성에 액세스하는 MemberExpression을 만듭니다.
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
매개 변수
- expression
- Expression
속성의 포함 개체입니다. 이 값은 정적 속성의 경우 null일 수 있습니다.
- propertyName
- String
액세스할 속성입니다.
반환
만든 MemberExpression입니다.
적용 대상
Property(Expression, PropertyInfo)
- Source:
- MemberExpression.cs
- Source:
- MemberExpression.cs
- Source:
- MemberExpression.cs
속성에 대한 액세스를 나타내는 MemberExpression을 만듭니다.
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
매개 변수
- expression
- Expression
Expression 속성에 설정할 Expression입니다. 이 값은 정적 속성의 경우 null일 수 있습니다.
- property
- PropertyInfo
PropertyInfo 속성에 설정할 Member입니다.
반환
MemberExpression 속성이 NodeType이고 MemberAccess 및 Expression 속성이 지정된 값으로 설정된 Member입니다.
예외
property
은 null
입니다.
또는
property
가 나타내는 속성이 static
(Visual Basic의 경우 Shared
)이 아니고 expression
이 null
인 경우
expression
.Type을 property
가 나타내는 속성의 선언 형식에 할당할 수 없는 경우
설명
Type 결과 MemberExpression 의 속성은 의 Member속성과 PropertyType 같습니다.
가 나타내는 속성이 property
인 경우(Shared
Visual Basic의 경우) expression
은 static
일 null
수 있습니다.
적용 대상
Property(Expression, MethodInfo)
- Source:
- MemberExpression.cs
- Source:
- MemberExpression.cs
- Source:
- MemberExpression.cs
속성 접근자 메서드를 통한 속성 액세스를 나타내는 MemberExpression을 만듭니다.
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
매개 변수
- expression
- Expression
Expression 속성에 설정할 Expression입니다. 이 값은 정적 속성의 경우 null일 수 있습니다.
- propertyAccessor
- MethodInfo
속성 접근자 메서드를 나타내는 MethodInfo입니다.
반환
MemberExpression 속성이 NodeType이고 MemberAccess 속성이 Expression으로 설정되고 expression
속성이 Member로 액세스되는 속성을 나타내는 PropertyInfo로 설정된 propertyAccessor
입니다.
예외
propertyAccessor
은 null
입니다.
또는
propertyAccessor
가 나타내는 메서드가 static
(Visual Basic의 경우 Shared
)이 아니고 expression
이 null
인 경우
expression
.Type을 propertyAccessor
로 나타내는 메서드의 선언 형식에 할당할 수 없는 경우
또는
propertyAccessor
가 나타내는 메서드가 속성 접근자 메서드가 아닌 경우
설명
Type 결과 MemberExpression 의 속성은 의 Member속성과 PropertyType 같습니다.
로 표시되는 propertyAccessor
메서드가 인 경우(Shared
Visual Basic의 경우) expression
은 static
일 null
수 있습니다.
적용 대상
Property(Expression, String)
- Source:
- MemberExpression.cs
- Source:
- MemberExpression.cs
- Source:
- MemberExpression.cs
속성에 대한 액세스를 나타내는 MemberExpression을 만듭니다.
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
매개 변수
- expression
- Expression
Expression에 이름이 Type인 속성이 포함된 propertyName
입니다. 정적 속성의 경우 이 값은 null
일 수 있습니다.
- propertyName
- String
액세스할 속성의 이름입니다.
반환
MemberExpression 속성이 NodeType이고 MemberAccess 속성이 Expression으로 설정되고 expression
속성이 Member이 가리키는 속성을 나타내는 PropertyInfo로 설정된 propertyName
입니다.
예외
expression
또는 propertyName
가 null
인 경우
propertyName
.Type 또는 해당 기본 형식에 이름이 expression
인 속성이 정의되지 않은 경우
예제
다음 예제에서는 속성을 액세스를 나타내는 식을 만드는 방법을 보여 줍니다.
// 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
설명
Type 결과 MemberExpression 의 속성은 로 표시된 속성을 나타내는 의 PropertyInfo 속성과 propertyName
같습니다PropertyType.
이 메서드는 를 검색 expression
합니다. 이름이 propertyName
인 속성에 대한 및 해당 기본 형식을 입력합니다. 공용 속성에는 공용이 아닌 속성보다 기본 설정이 지정됩니다. 일치하는 속성이 있으면 이 메서드는 해당 속성을 나타내는 및 PropertyInfo 을 에 Property전달 expression
합니다.
적용 대상
.NET