Compartir vía


Expression.TypeAs(Expression, Type) Método

Definición

Crea un UnaryExpression objeto que representa una referencia explícita o conversión boxing donde null se proporciona si se produce un error en la conversión.

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

Parámetros

expression
Expression

que Expression se va a establecer la Operand propiedad igual a.

type
Type

Type que se va a establecer la Type propiedad igual a.

Devoluciones

que UnaryExpression tiene la NodeType propiedad igual a TypeAs y las Operand propiedades y Type establecidas en los valores especificados.

Excepciones

expression o type es null.

Ejemplos

En el ejemplo siguiente se muestra cómo usar el TypeAs(Expression, Type) método para crear un UnaryExpression que representa la conversión de referencia de una expresión entera que no acepta valores NULL en el tipo entero que acepta valores NULL.

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

Comentarios

La Method propiedad del resultante UnaryExpression es null. Las IsLifted propiedades y IsLiftedToNull son false.

Se aplica a