Expression.NewArrayBounds 方法

定义

创建一个表示创建具有指定秩的数组的 NewArrayExpression

重载

NewArrayBounds(Type, Expression[])

创建一个表示创建具有指定秩的数组的 NewArrayExpression

NewArrayBounds(Type, IEnumerable<Expression>)

创建一个表示创建具有指定秩的数组的 NewArrayExpression

NewArrayBounds(Type, Expression[])

Source:
NewArrayExpression.cs
Source:
NewArrayExpression.cs
Source:
NewArrayExpression.cs

创建一个表示创建具有指定秩的数组的 NewArrayExpression

public:
 static System::Linq::Expressions::NewArrayExpression ^ NewArrayBounds(Type ^ type, ... cli::array <System::Linq::Expressions::Expression ^> ^ bounds);
public static System.Linq.Expressions.NewArrayExpression NewArrayBounds (Type type, params System.Linq.Expressions.Expression[] bounds);
static member NewArrayBounds : Type * System.Linq.Expressions.Expression[] -> System.Linq.Expressions.NewArrayExpression
Public Shared Function NewArrayBounds (type As Type, ParamArray bounds As Expression()) As NewArrayExpression

参数

type
Type

一个表示数组的元素类型的 Type

bounds
Expression[]

用于填充 Expression 集合的 Expressions 对象的数组。

返回

一个 NewArrayExpression,其 NodeType 属性等于 NewArrayBounds,并且其 Expressions 属性设置为指定值。

例外

typeboundsnull

- 或 -

bounds 的元素为 null

bounds 的元素的 Type 属性不表示整型。

示例

以下示例演示如何使用 NewArrayBounds 方法创建表示创建排名为 2 的字符串数组的表达式树。

// Create an expression tree that represents creating a
// two-dimensional array of type string with bounds [3,2].
System.Linq.Expressions.NewArrayExpression newArrayExpression =
    System.Linq.Expressions.Expression.NewArrayBounds(
            typeof(string),
            System.Linq.Expressions.Expression.Constant(3),
            System.Linq.Expressions.Expression.Constant(2));

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

// This code produces the following output:
//
// new System.String[,](3, 2)
' Create an expression tree that represents creating a string
' array with rank 2 and bounds (3,2).
Dim newArrayExpression As System.Linq.Expressions.NewArrayExpression = _
    System.Linq.Expressions.Expression.NewArrayBounds( _
            Type.GetType("System.String"), _
            System.Linq.Expressions.Expression.Constant(3), _
            System.Linq.Expressions.Expression.Constant(2))

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

' This code produces the following output:
'
' new System.String[,](3, 2)

注解

Type生成的 NewArrayExpression 的 属性表示其秩等于 的bounds长度且其元素类型为 type的数组类型。

Type的每个元素bounds的 属性必须表示整型类型。

适用于

NewArrayBounds(Type, IEnumerable<Expression>)

Source:
NewArrayExpression.cs
Source:
NewArrayExpression.cs
Source:
NewArrayExpression.cs

创建一个表示创建具有指定秩的数组的 NewArrayExpression

public:
 static System::Linq::Expressions::NewArrayExpression ^ NewArrayBounds(Type ^ type, System::Collections::Generic::IEnumerable<System::Linq::Expressions::Expression ^> ^ bounds);
public static System.Linq.Expressions.NewArrayExpression NewArrayBounds (Type type, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> bounds);
static member NewArrayBounds : Type * seq<System.Linq.Expressions.Expression> -> System.Linq.Expressions.NewArrayExpression
Public Shared Function NewArrayBounds (type As Type, bounds As IEnumerable(Of Expression)) As NewArrayExpression

参数

type
Type

一个表示数组的元素类型的 Type

bounds
IEnumerable<Expression>

一个 IEnumerable<T>,包含用来填充 Expression 集合的 Expressions 对象。

返回

一个 NewArrayExpression,其 NodeType 属性等于 NewArrayBounds,并且其 Expressions 属性设置为指定值。

例外

typeboundsnull

- 或 -

bounds 的元素为 null

bounds 的元素的 Type 属性不表示整型。

示例

以下示例演示如何使用 NewArrayBounds 方法创建表示创建排名为 2 的字符串数组的表达式树。

// Create an expression tree that represents creating a
// two-dimensional array of type string with bounds [3,2].
System.Linq.Expressions.NewArrayExpression newArrayExpression =
    System.Linq.Expressions.Expression.NewArrayBounds(
            typeof(string),
            System.Linq.Expressions.Expression.Constant(3),
            System.Linq.Expressions.Expression.Constant(2));

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

// This code produces the following output:
//
// new System.String[,](3, 2)
' Create an expression tree that represents creating a string
' array with rank 2 and bounds (3,2).
Dim newArrayExpression As System.Linq.Expressions.NewArrayExpression = _
    System.Linq.Expressions.Expression.NewArrayBounds( _
            Type.GetType("System.String"), _
            System.Linq.Expressions.Expression.Constant(3), _
            System.Linq.Expressions.Expression.Constant(2))

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

' This code produces the following output:
'
' new System.String[,](3, 2)

注解

Type生成的 NewArrayExpression 的 属性表示其秩等于 的bounds长度且其元素类型为 type的数组类型。

Type的每个元素bounds的 属性必须表示整型类型。

适用于