Expression.TypeAs(Expression, Type) Метод

Определение

Создает UnaryExpression, представляющий преобразование явной ссылки или упаковки, где null поддерживается в случае неудачного преобразования.Creates a UnaryExpression that represents an explicit reference or boxing conversion where null is supplied if the conversion fails.

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

Параметры

expression
Expression

Объект Expression, который следует задать в качестве значения свойства Operand.An Expression to set the Operand property equal to.

type
Type

Объект Type, который следует задать в качестве значения свойства Type.A Type to set the Type property equal to.

Возвраты

Выражение UnaryExpression со свойствомNodeType, равным TypeAs, и свойствами Operand и Type, для которых заданы указанные значения.A UnaryExpression that has the NodeType property equal to TypeAs and the Operand and Type properties set to the specified values.

Исключения

Параметр expression или type имеет значение null.expression or type is null.

Примеры

В следующем примере демонстрируется использование TypeAs(Expression, Type) метода для создания объекта UnaryExpression , представляющего преобразование ссылки для целочисленного выражения, не допускающего значения NULL, в целочисленный тип Nullable.The following example demonstrates how to use the TypeAs(Expression, Type) method to create a UnaryExpression that represents the reference conversion of a non-nullable integer expression to the nullable integer type.

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

Комментарии

Полученное Method UnaryExpression свойство имеетnullзначение.The Method property of the resulting UnaryExpression is null. Свойства IsLifted falseи IsLiftedToNull являются обоими.The IsLifted and IsLiftedToNull properties are both false.

Применяется к