다음을 통해 공유


Expression.TypeAs(Expression, Type) 메서드

정의

변환에 실패하면 UnaryExpression이 제공되는 boxing 변환이나 명시적 참조를 나타내는 null을 만듭니다.

public:
 static System::Linq::Expressions::UnaryExpression ^ TypeAs(System::Linq::Expressions::Expression ^ expression, Type ^ type);
public static System.Linq.Expressions.UnaryExpression TypeAs (System.Linq.Expressions.Expression expression, Type type);
static member TypeAs : System.Linq.Expressions.Expression * Type -> System.Linq.Expressions.UnaryExpression
Public Shared Function TypeAs (expression As Expression, type As Type) As UnaryExpression

매개 변수

expression
Expression

Expression 속성에 설정할 Operand입니다.

type
Type

Type 속성에 설정할 Type입니다.

반환

UnaryExpression 속성이 NodeType이고 TypeAsOperand 속성이 지정된 값으로 설정된 Type입니다.

예외

expression 또는 typenull인 경우

예제

다음 예제에서는 메서드를 사용하여 TypeAs(Expression, Type) nullable이 아닌 정수 식이 nullable 정수 형식으로의 참조 변환을 나타내는 을 만드는 UnaryExpression 방법을 보여 줍니다.

// Create a UnaryExpression that represents a
// conversion of an int to an int?.
System.Linq.Expressions.UnaryExpression typeAsExpression =
    System.Linq.Expressions.Expression.TypeAs(
        System.Linq.Expressions.Expression.Constant(34, typeof(int)),
        typeof(int?));

Console.WriteLine(typeAsExpression.ToString());

// This code produces the following output:
//
// (34 As Nullable`1)
' Create a UnaryExpression that represents a reference
' conversion of an Integer to an Integer? (a nullable Integer).
Dim typeAsExpression As System.Linq.Expressions.UnaryExpression = _
    System.Linq.Expressions.Expression.TypeAs( _
        System.Linq.Expressions.Expression.Constant(34, Type.GetType("System.Int32")), _
        Type.GetType("System.Nullable`1[System.Int32]"))

Console.WriteLine(typeAsExpression.ToString())

' This code produces the following output:
'
' (34 As Nullable`1)

설명

결과 UnaryExpression 의 속성은 Method 입니다null. 및 IsLiftedToNull 속성은 IsLifted 모두 false입니다.

적용 대상