Expression.TypeAs(Expression, Type) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
建立 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。
傳回
UnaryExpression,其 NodeType 屬性等於 TypeAs,且 Operand 和 Type 屬性設定為指定的值。
例外狀況
expression
或 type
為 null
。
範例
下列範例示範如何使用 TypeAs(Expression, Type) 方法來建立 , UnaryExpression 這個方法表示不可為 Null 整數表達式的參考轉換為可為 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)
備註
Method產生的 UnaryExpression 屬性為 null
。 IsLifted屬性 IsLiftedToNull 都是 false
。