Expression.Field 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
필드 액세스를 나타내는 MemberExpression을 만듭니다.
오버로드
| Field(Expression, FieldInfo) |
필드 액세스를 나타내는 MemberExpression을 만듭니다. |
| Field(Expression, String) |
필드 이름을 통한 필드 액세스를 나타내는 MemberExpression을 만듭니다. |
| Field(Expression, Type, String) |
필드 액세스를 나타내는 MemberExpression을 만듭니다. |
Field(Expression, FieldInfo)
- Source:
- MemberExpression.cs
- Source:
- MemberExpression.cs
- Source:
- MemberExpression.cs
필드 액세스를 나타내는 MemberExpression을 만듭니다.
public:
static System::Linq::Expressions::MemberExpression ^ Field(System::Linq::Expressions::Expression ^ expression, System::Reflection::FieldInfo ^ field);
public static System.Linq.Expressions.MemberExpression Field (System.Linq.Expressions.Expression expression, System.Reflection.FieldInfo field);
public static System.Linq.Expressions.MemberExpression Field (System.Linq.Expressions.Expression? expression, System.Reflection.FieldInfo field);
static member Field : System.Linq.Expressions.Expression * System.Reflection.FieldInfo -> System.Linq.Expressions.MemberExpression
Public Shared Function Field (expression As Expression, field As FieldInfo) As MemberExpression
매개 변수
- expression
- Expression
Expression 속성에 설정할 Expression입니다.
static(Visual Basic에서는 Shared)의 경우 expression이 null입니다.
반환
MemberExpression 속성이 NodeType이고 MemberAccess 및 Expression 속성이 지정된 값으로 설정된 Member입니다.
예외
field은 null입니다.
또는
field가 나타내는 필드가 static(Visual Basic의 경우 Shared)이 아니고 expression이 null인 경우
expression.Type을 field가 나타내는 필드의 선언 형식에 할당할 수 없는 경우
설명
Type 결과 MemberExpression 의 속성은 의 field속성과 FieldType 같습니다.
적용 대상
Field(Expression, String)
- Source:
- MemberExpression.cs
- Source:
- MemberExpression.cs
- Source:
- MemberExpression.cs
필드 이름을 통한 필드 액세스를 나타내는 MemberExpression을 만듭니다.
public:
static System::Linq::Expressions::MemberExpression ^ Field(System::Linq::Expressions::Expression ^ expression, System::String ^ fieldName);
public static System.Linq.Expressions.MemberExpression Field (System.Linq.Expressions.Expression expression, string fieldName);
static member Field : System.Linq.Expressions.Expression * string -> System.Linq.Expressions.MemberExpression
Public Shared Function Field (expression As Expression, fieldName As String) As MemberExpression
매개 변수
- expression
- Expression
Expression에 이름이 Type인 필드가 포함된 fieldName입니다. 이 값은 정적 필드의 경우 null일 수 있습니다.
- fieldName
- String
액세스할 필드의 이름입니다.
반환
MemberExpression 속성이 NodeType이고 MemberAccess 속성이 Expression으로 설정되고 expression 속성이 Member이 가리키는 필드를 나타내는 FieldInfo로 설정된 fieldName입니다.
예외
expression 또는 fieldName가 null인 경우
fieldName.Type 또는 해당 기본 형식에 이름이 expression인 필드가 정의되지 않은 경우
예제
다음 코드 예제에서는 필드에 액세스를 나타내는 식을 만드는 방법을 보여 줍니다.
// Add the following directive to your file:
// using System.Linq.Expressions;
class TestFieldClass
{
int sample = 40;
}
static void TestField()
{
TestFieldClass obj = new TestFieldClass();
// This expression represents accessing a field.
// For static fields, the first parameter must be null.
Expression fieldExpr = Expression.Field(
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>>(fieldExpr).Compile()());
}
// This code example produces the following output:
//
// 40
' Add the following directive to your file:
' Imports System.Linq.Expressions
Class TestFieldClass
Dim sample As Integer = 40
End Class
Sub TestField()
Dim obj As New TestFieldClass()
' This expression represents accessing a field.
' For static fields, the first parameter must be Nothing.
Dim fieldExpr As Expression = Expression.Field(
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))(fieldExpr).Compile()())
End Sub
' This code example produces the following output:
'
' 40
설명
Type 결과 MemberExpression 의 속성은 로 표시된 필드를 나타내는 의 FieldInfo 속성과 fieldName같습니다FieldType.
이 메서드는 를 검색합니다 expression. 이름이 fieldName인 필드에 대한 및 해당 기본 형식을 입력합니다. 공용 필드는 공용이 아닌 필드에 대해 기본 설정이 지정됩니다. 일치하는 필드를 찾은 경우 이 메서드는 해당 필드를 나타내는 및 FieldInfo 을 에 Field전달 expression 합니다.
적용 대상
Field(Expression, Type, String)
- Source:
- MemberExpression.cs
- Source:
- MemberExpression.cs
- Source:
- MemberExpression.cs
필드 액세스를 나타내는 MemberExpression을 만듭니다.
public:
static System::Linq::Expressions::MemberExpression ^ Field(System::Linq::Expressions::Expression ^ expression, Type ^ type, System::String ^ fieldName);
public static System.Linq.Expressions.MemberExpression Field (System.Linq.Expressions.Expression expression, Type type, string fieldName);
public static System.Linq.Expressions.MemberExpression Field (System.Linq.Expressions.Expression? expression, Type type, string fieldName);
static member Field : System.Linq.Expressions.Expression * Type * string -> System.Linq.Expressions.MemberExpression
Public Shared Function Field (expression As Expression, type As Type, fieldName As String) As MemberExpression
매개 변수
- expression
- Expression
필드의 포함 개체입니다. 이 값은 정적 필드의 경우 null일 수 있습니다.
- fieldName
- String
액세스할 필드입니다.
반환
만든 MemberExpression입니다.