Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Recorre en iteración una CachedDataHostItemCollection.
Jerarquía de herencia
System.Object
Microsoft.VisualStudio.Tools.Applications.CachedDataHostItemEnumerator
Espacio de nombres: Microsoft.VisualStudio.Tools.Applications
Ensamblado: Microsoft.VisualStudio.Tools.Applications.ServerDocument (en Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll)
Sintaxis
'Declaración
<PermissionSetAttribute(SecurityAction.Demand, Name := "FullTrust")> _
Public NotInheritable Class CachedDataHostItemEnumerator _
Implements IEnumerator(Of CachedDataHostItem), IDisposable, _
IEnumerator
[PermissionSetAttribute(SecurityAction.Demand, Name = "FullTrust")]
public sealed class CachedDataHostItemEnumerator : IEnumerator<CachedDataHostItem>,
IDisposable, IEnumerator
El tipo CachedDataHostItemEnumerator expone los siguientes miembros.
Propiedades
| Nombre | Descripción | |
|---|---|---|
![]() |
Current | Obtiene CachedDataHostItem en la posición actual del enumerador. |
Arriba
Métodos
| Nombre | Descripción | |
|---|---|---|
![]() |
Equals | Determina si el objeto especificado es igual al objeto actual. (Se hereda de Object). |
![]() |
GetHashCode | Actúa como función hash para un tipo concreto. (Se hereda de Object). |
![]() |
GetType | Obtiene el objeto Type de la instancia actual. (Se hereda de Object). |
![]() |
MoveNext | Desplaza el enumerador al siguiente CachedDataHostItem de la CachedDataHostItemCollection. |
![]() |
Reset | Establece el enumerador en su posición inicial, que es delante del primer CachedDataHostItem de la colección. |
![]() |
ToString | Devuelve una cadena que representa el objeto actual. (Se hereda de Object). |
Arriba
Implementaciones explícitas de interfaces
| Nombre | Descripción | |
|---|---|---|
![]() ![]() |
IEnumerator.Current | Para obtener una descripción de este miembro, vea Current. |
![]() ![]() |
IDisposable.Dispose | Libera todos los recursos utilizados por CachedDataHostItemEnumerator. |
Arriba
Comentarios
Tanto Visual Basic como C# contienen una instrucción que oculta la complejidad de los enumeradores (foreach en C# y For Each en Visual Basic).Use la instrucción adecuada para el lenguaje que utilice, en lugar de manipular directamente el enumerador.
Los enumeradores pueden utilizarse para leer los datos de la colección, pero no se pueden utilizar para modificar la colección subyacente.
Inicialmente, el enumerador se coloca antes del primer elemento de la colección.El método Reset también devuelve el enumerador a esta posición.En ella, si se establece la propiedad Current, se provoca una excepción.Por lo tanto, se debe llamar al método MoveNext para desplazar el enumerador hasta el primer elemento de la colección antes de leer el valor de Current.
Current devuelve el mismo objeto hasta que se llama a MoveNext o a Reset.MoveNext establece Current en el elemento siguiente.
Si MoveNext pasa el final de la colección, el enumerador se coloca detrás del último elemento de la colección y MoveNext devuelve false.Cuando el enumerador está en esta posición, las llamadas posteriores al método MoveNext también devuelven el valor false.Si la última llamada al método MoveNext ha devuelto false y se realiza una llamada a la propiedad Current, se produce una excepción.Para volver a establecer el valor de Current en el primer elemento de la colección, se puede llamar primero al método Reset y después al método MoveNext.
Mientras no se modifique la colección, el enumerador seguirá siendo válido.Si se realizan cambios en la colección (como agregar, modificar o eliminar elementos), el enumerador queda invalidado de forma definitiva y la siguiente llamada a MoveNext o a Reset produce una excepción InvalidOperationException.Si la colección se modifica entre MoveNext y Current, la propiedad Current devuelve el elemento en que está establecida, aunque el enumerador ya esté invalidado.
El enumerador no tiene acceso exclusivo a la colección; por lo tanto, la enumeración a través de una colección es un procedimiento que, por naturaleza, no es seguro para la ejecución de subprocesos.Incluso cuando una colección está sincronizada, otros subprocesos todavía pueden modificarla, lo que hace que el enumerador produzca una excepción.Con el fin de garantizar la seguridad para la ejecución de subprocesos durante la enumeración, es posible bloquear la colección durante toda la enumeración o detectar las excepciones provocadas por los cambios que efectúen otros subprocesos.
Seguridad para subprocesos
Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.
Vea también
Referencia
Microsoft.VisualStudio.Tools.Applications (Espacio de nombres)
.gif)
.gif)
.gif)
.gif)
.gif)