若要檢視英文版的文章,請選取 [原文] 核取方塊。您也可以將滑鼠指標移到文字上,即可在快顯視窗顯示英文原文。
譯文
原文
本文件已封存並已停止維護。

Expression.NewArrayInit 方法 (Type, Expression[])

建立 NewArrayExpression,其代表建立一維陣列,並從項目清單將此陣列初始化。

命名空間:  System.Linq.Expressions
組件:  System.Core (在 System.Core.dll 中)

public static NewArrayExpression NewArrayInit(
	Type type,
	params Expression[] initializers
)

參數

type
型別:System.Type
Type ,代表陣列的元素型別。
initializers
型別:System.Linq.Expressions.Expression[]
用來填入 Expressions 集合之 Expression 物件的陣列。

傳回值

型別:System.Linq.Expressions.NewArrayExpression
NewArrayExpression ,其 NodeType 屬性等於 NewArrayInit,而 Expressions 屬性設定為指定的值。

例外狀況條件
ArgumentNullException

typeinitializersnull

-或-

initializers 的元素是 null

InvalidOperationException

initializers 之項目的 Type 屬性所表示的型別無法指派給 type 型別。

initializers 之每個項目的 Type 屬性所表示的型別必須可指派給 type 所表示的型別,可能在它「加上引號」(Quoted) 之後。

注意事項注意事項

項目只有在 typeExpression 時才加上引號。 加註引號表示項目是包裝在 Quote 節點中。 產生的節點是 UnaryExpression,其 Operand 屬性是 initializers 的項目。

產生之 NewArrayExpressionType 屬性表示陣列型別,其陣序規範為 1,其項目型別為 type

下列範例示範如何使用 NewArrayInit 方法建立運算式樹狀架構,代表建立使用字串運算式清單初始化的一維字串陣列。


List<System.Linq.Expressions.Expression> trees =
    new List<System.Linq.Expressions.Expression>()
        { System.Linq.Expressions.Expression.Constant("oak"),
          System.Linq.Expressions.Expression.Constant("fir"),
          System.Linq.Expressions.Expression.Constant("spruce"),
          System.Linq.Expressions.Expression.Constant("alder") };

// Create an expression tree that represents creating and  
// initializing a one-dimensional array of type string.
System.Linq.Expressions.NewArrayExpression newArrayExpression =
    System.Linq.Expressions.Expression.NewArrayInit(typeof(string), trees);

// Output the string representation of the Expression.
Console.WriteLine(newArrayExpression.ToString());

// This code produces the following output:
//
// new [] {"oak", "fir", "spruce", "alder"}


.NET Framework

支援版本:4、3.5

.NET Framework Client Profile

支援版本:4、3.5 SP1

支援版本:

Windows 7, Windows Vista SP1 (含) 以後版本, Windows XP SP3, Windows Server 2008 (不支援伺服器核心), Windows Server 2008 R2 (SP1 (含) 以後版本支援伺服器核心), Windows Server 2003 SP2

.NET Framework 並不支援各種平台的所有版本。如需支援的版本的清單,請參閱.NET Framework 系統需求
顯示: