Expression.TypeAs(Expression, Type) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vytvoří, UnaryExpression který představuje explicitní odkaz nebo boxing převod, kde null
je zadán, pokud převod selže.
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
Parametry
- expression
- Expression
Pro Expression nastavení Operand vlastnosti na hodnotu .
Návraty
A UnaryExpression , který má NodeType vlastnost rovnou TypeAs a Operand vlastnosti a Type nastavené na zadané hodnoty.
Výjimky
expression
nebo type
je null
.
Příklady
Následující příklad ukazuje, jak použít metodu TypeAs(Expression, Type) k vytvoření UnaryExpression , která představuje převod odkazu nenulového celočíselného výrazu na typ integer s možnou hodnotou 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)
Poznámky
Vlastnost Method výsledného UnaryExpression objektu je null
. Vlastnosti IsLifted a IsLiftedToNull jsou .false