LogProviderInfoEnumerator.Current Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene l'elemento LogProviderInfo corrente dalla raccolta.
public:
property Microsoft::SqlServer::Dts::Runtime::LogProviderInfo ^ Current { Microsoft::SqlServer::Dts::Runtime::LogProviderInfo ^ get(); };
public Microsoft.SqlServer.Dts.Runtime.LogProviderInfo Current { get; }
member this.Current : Microsoft.SqlServer.Dts.Runtime.LogProviderInfo
Public ReadOnly Property Current As LogProviderInfo
Valore della proprietà
Oggetto LogProviderInfo corrente.
Esempio
L'esempio di codice seguente crea un enumeratore e quindi usa i Currentmetodi , MoveNext e Reset per passare alla raccolta.
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;
namespace LogProvInfoProperties
{
class Program
{
static void Main(string[] args)
{
Application app = new Application();
LogProviderInfos infos = app.LogProviderInfos;
//Create the Enumerator.
LogProviderInfoEnumerator myEnumerator = infos.GetEnumerator();
Console.WriteLine("The collection contains the following values:");
//Iterate over the collection using the indexer instead of foreach.
int i = 0;
while ((myEnumerator.MoveNext()) && (myEnumerator.Current != null))
Console.WriteLine("[{0}] {1}", i++, myEnumerator.Current.Name);
}
}
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
Namespace LogProvInfoProperties
Class Program
Shared Sub Main(ByVal args() As String)
Dim app As Application = New Application()
Dim infos As LogProviderInfos = app.LogProviderInfos
'Create the Enumerator.
Dim myEnumerator As LogProviderInfoEnumerator = infos.GetEnumerator()
Console.WriteLine("The collection contains the following values:")
'Iterate over the collection using the indexer instead of foreach.
Dim i As Integer = 0
While (myEnumerator.MoveNext()) &&(myEnumerator.Current <> Nothing)
Console.WriteLine("[{0}] {1}",i = Console.WriteLine("[{0}] {1}",i + 1
End While
End Sub
End Class
End Namespace
Esempio di output
L'insieme contiene i valori seguenti:
[0] Provider di log SSIS per i file di testo
[1] Provider di log SSIS per SQL Server Profiler
[2] Provider di log SSIS per SQL Server
[3] Provider di log SSIS per Registro eventi di Windows
[4] Provider di log SSIS per i file XML
Commenti
Dopo aver creato un enumeratore o dopo una chiamata al Reset
metodo, il MoveNext
metodo deve essere chiamato per avanzare l'enumeratore al primo elemento della raccolta prima che l'enumeratore possa leggere il valore della Current proprietà; in caso contrario, Current non è definito e genera un'eccezione.
Current genera anche un'eccezione se l'ultima chiamata a MoveNext
restituita false
, che indica la fine della raccolta.
Current non sposta la posizione dell'enumeratore e le chiamate consecutive per Current restituire lo stesso oggetto finché non MoveNext
viene chiamato o Reset
.
Un enumeratore rimane valido finché la raccolta rimane invariata. Se le modifiche vengono apportate alla raccolta, ad esempio l'aggiunta, la modifica o l'eliminazione di elementi, l'enumeratore viene invalidato e diventa irrecuperabile; quindi, la chiamata successiva a MoveNext
o Reset
genera un InvalidOperationException
oggetto . Se la raccolta viene modificata tra chiamate a MoveNext
e Current, Current restituisce l'elemento impostato su, anche se l'enumeratore è stato invalidato.