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 인 경우(SharedVisual 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 메서드가 인 경우(SharedVisual 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 합니다.