Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

Expression.NewArrayInit (Método) (Type, IEnumerable<Expression>)

Crea un objeto NewArrayExpression que representa la creación de una matriz unidimensional y su inicialización a partir de una lista de elementos.

Espacio de nombres:  System.Linq.Expressions
Ensamblado:  System.Core (en System.Core.dll)

public static NewArrayExpression NewArrayInit(
	Type type,
	IEnumerable<Expression> initializers
)

Parámetros

type
Tipo: System.Type
Type que representa el tipo de elemento de la matriz.
initializers
Tipo: System.Collections.Generic.IEnumerable<Expression>
Objeto IEnumerable<T> que contiene los objetos Expression que se van a usar para rellenar la colección Expressions.

Valor devuelto

Tipo: System.Linq.Expressions.NewArrayExpression
Objeto NewArrayExpression cuya propiedad NodeType es NewArrayInit y cuya propiedad Expressions se establece en el valor especificado.

ExcepciónCondición
ArgumentNullException

El parámetro type o el parámetro initializers es null.

O bien

Un elemento de initializers es null.

InvalidOperationException

La propiedad Type de un elemento de initializers representa un tipo que no puede asignarse al tipo representado por type.

La propiedad Type de cada elemento de initializers debe representar un tipo que puede asignarse al tipo representado por type, posiblemente después de entrecomillar.

NotaNota

Un elemento se entrecomillará sólo si type es Expression. El entrecomillado significa que un nodo Quote contiene el elemento. El nodo resultante es un objeto UnaryExpression cuya propiedad Operand es el elemento de initializers.

La propiedad Type del objeto NewArrayExpression resultante representa un tipo de matriz cuyo rango es 1 y cuyo tipo de elemento es type.

En el ejemplo siguiente se muestra cómo utilizar el método NewArrayInit para crear un árbol de expresión que representa la creación de una matriz de cadenas unidimensional que se inicializa con una lista de expresiones de cadena.


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

Compatible con: 4.5.2, 4.5.1, 4.5, 4, 3.5

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

Biblioteca de clases portable

Compatible con: Biblioteca de clases portable

.NET para aplicaciones de la Tienda Windows

Compatible con: Windows 8

.NET para aplicaciones de Windows Phone

Compatible con: Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2015 Microsoft