ForEachEnumeratorInfosEnumerator.Current Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Devuelve el objeto ForEachEnumeratorInfo actual de la colección.
public:
property Microsoft::SqlServer::Dts::Runtime::ForEachEnumeratorInfo ^ Current { Microsoft::SqlServer::Dts::Runtime::ForEachEnumeratorInfo ^ get(); };
public Microsoft.SqlServer.Dts.Runtime.ForEachEnumeratorInfo Current { get; }
member this.Current : Microsoft.SqlServer.Dts.Runtime.ForEachEnumeratorInfo
Public ReadOnly Property Current As ForEachEnumeratorInfo
Valor de propiedad
El objeto actual ForEachEnumeratorInfo en la colección.
Ejemplos
En el ejemplo de código siguiente se crea un enumerador y, a continuación, se usan los Current métodos y MoveNext para navegar por la colección.
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;
using Microsoft.SqlServer.Dts.Runtime.Enumerators.Item;
namespace ForEachEnums
{
class Program
{
static void Main(string[] args)
{
Application app = new Application();
ForEachEnumeratorInfos feInfos = app.ForEachEnumeratorInfos;
//Create the Enumerator.
ForEachEnumeratorInfosEnumerator myEnumerator = feInfos.GetEnumerator();
Console.WriteLine("The collection contains the following values:");
int i = 0;
while ((myEnumerator.MoveNext()) && (myEnumerator.Current != null))
Console.WriteLine("[{0}] {1}", i++, myEnumerator.Current.Name);
}
}
}
Salida del ejemplo:
La colección contiene los siguientes valores:
[0] Para cada enumerador de archivos
[1] Para cada enumerador de elementos
[2] Para cada enumerador de ADO
[3] Para cada enumerador de conjunto de filas de esquema de ADO.NET
[4] Para cada uno de los enumeradores de variables
[5] Para cada enumerador NodeList
[6] Para cada enumerador de SMO
Comentarios
Una vez creado un enumerador, o después de una llamada al método Reset , se debe llamar al método MoveNext para avanzar el enumerador al primer elemento de la colección antes de que el enumerador pueda leer el valor de la propiedad Current ; de lo contrario, Current no está definido y produce una excepción.
Current también produce una excepción si la última llamada a MoveNext devolvió false
, que indica el final de la colección.
Current no mueve la posición del enumerador y las llamadas consecutivas a Current devuelven el mismo objeto hasta que se llama a MoveNext o Reset .
Un enumerador sigue siendo válido mientras la colección permanezca inalterada. Si se realizan cambios en la colección, como agregar, modificar o eliminar elementos, el enumerador se invalida y se convierte en irrecuperable; por lo tanto, la siguiente llamada a MoveNext o Reset produce una excepción InvalidOperationException. Sin embargo, si la colección se modifica entre llamadas a MoveNext y Current, Current devuelve el elemento en el que está establecido, incluso si el enumerador se ha invalidado.