Expression.TypeAs(Expression, Type) Methode

Definitie

Hiermee maakt u een UnaryExpression die een expliciete verwijzing of boksconversie vertegenwoordigt, waar null wordt opgegeven als de conversie mislukt.

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

Parameters

expression
Expression

Een Expression om de Operand eigenschap in te stellen die gelijk is aan.

type
Type

A Type om de Type eigenschap in te stellen die gelijk is aan.

Retouren

Een UnaryExpression met de NodeType eigenschap gelijk aan TypeAs en de Operand eigenschappen die Type zijn ingesteld op de opgegeven waarden.

Uitzonderingen

expression of type is null.

Voorbeelden

In het volgende voorbeeld ziet u hoe u de TypeAs(Expression, Type) methode gebruikt om een UnaryExpression te maken die de verwijzingsconversie van een niet-nullable gehele getalexpressie vertegenwoordigt naar het type null-getal.

// 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)

Opmerkingen

De Method eigenschap van het resulterende UnaryExpression is null. De IsLifted en IsLiftedToNull eigenschappen zijn beide false.

Van toepassing op