Lenguaje

SelectedLogProviders.Item[Object] Propiedad

Definición

Obtiene un LogProvider objeto de la colección.

public:
 property Microsoft::SqlServer::Dts::Runtime::LogProvider ^ default[System::Object ^] { Microsoft::SqlServer::Dts::Runtime::LogProvider ^ get(System::Object ^ index); };
public Microsoft.SqlServer.Dts.Runtime.LogProvider this[object index] { get; }
member this.Item(obj) : Microsoft.SqlServer.Dts.Runtime.LogProvider
Default Public ReadOnly Property Item(index As Object) As LogProvider

Parámetros

index
Object

El nombre, identidad, ID o índice del LogProvider objeto que se debe devolver.

Valor de propiedad

Un LogProvider objeto de la colección.

Excepciones

El elemento no se encontraba en la colección.

Ejemplos

El siguiente ejemplo de código añade y elimina proveedores de registro para el paquete, además de mostrar el uso de la Contains sintaxis y Item[] de [0] para la colección.

using System;  
using System.Collections.Generic;  
using System.Text;  
using Microsoft.SqlServer.Dts.Runtime;  

namespace Microsoft.SqlServer.SSIS.Samples  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            Package pkg = new Package();  
            // Make several log providers available to the package.  
            LogProvider log1 = pkg.LogProviders.Add("DTS.LogProviderEventLog.1");  
            LogProvider log2 = pkg.LogProviders.Add("DTS.LogProviderSQLProfiler.1");  
            LogProvider log3 = pkg.LogProviders.Add("DTS.LogProviderTextFile.1");  
            LogProvider log4 = pkg.LogProviders.Add("DTS.LogProviderTextFile.1");  
            // Show the log providers available to the package.  
            Console.WriteLine("Log providers available in the Package:");  
            LogProviders logs = pkg.LogProviders;  
            foreach (LogProvider lp in logs)  
                Console.WriteLine(lp.CreationName);  

            // Pick a log provider for the package.  
            pkg.LoggingOptions.SelectedLogProviders.Add(log4);  
            pkg.LoggingOptions.SelectedLogProviders.Add(log1);  
            SelectedLogProviders provs = pkg.LoggingOptions.SelectedLogProviders;  
            Console.WriteLine();  
            Console.WriteLine("Selected Log Providers for Package: {0}", provs.Count);  

            foreach (LogProvider lp in provs)  
                Console.WriteLine(lp.CreationName);  

            pkg.LoggingOptions.SelectedLogProviders.Remove(0);  
            Console.WriteLine();  
            Console.WriteLine("Count after one has been removed {0}", provs.Count);  

            // Test both the indexer and Contains method.  
            if (logs.Contains(0))  
                Console.WriteLine("Index zero in collection contains:  {0}", logs[0].CreationName);  
            else  
                throw new Exception();  

            // Show the use of the GetEnumerator.  
            LogProviderEnumerator myEnum = pkg.LogProviders.GetEnumerator();  
            Console.WriteLine("The collection contains the following values:");  
            while ((myEnum.MoveNext()) && (myEnum.Current != null))  
                Console.WriteLine("{0}", myEnum.Current.Name);  
        }  
    }  
}  
Imports System  
Imports System.Collections.Generic  
Imports System.Text  
Imports Microsoft.SqlServer.Dts.Runtime  

Namespace Microsoft.SqlServer.SSIS.Samples  
    Class Program  
        Shared  Sub Main(ByVal args() As String)  
            Dim pkg As Package =  New Package()   
            ' Make several log providers available to the package.  
            Dim log1 As LogProvider =  pkg.LogProviders.Add("DTS.LogProviderEventLog.1")   
            Dim log2 As LogProvider =  pkg.LogProviders.Add("DTS.LogProviderSQLProfiler.1")   
            Dim log3 As LogProvider =  pkg.LogProviders.Add("DTS.LogProviderTextFile.1")   
            Dim log4 As LogProvider =  pkg.LogProviders.Add("DTS.LogProviderTextFile.1")   
            ' Show the log providers available to the package.  
            Console.WriteLine("Log providers available in the Package:")  
            Dim logs As LogProviders =  pkg.LogProviders   
            Dim lp As LogProvider  
            For Each lp In logs  
                Console.WriteLine(lp.CreationName)  
            Next  

            ' Pick a log provider for the package.  
            pkg.LoggingOptions.SelectedLogProviders.Add(log4)  
            pkg.LoggingOptions.SelectedLogProviders.Add(log1)  
            Dim provs As SelectedLogProviders =  pkg.LoggingOptions.SelectedLogProviders   
            Console.WriteLine()  
            Console.WriteLine("Selected Log Providers for Package: {0}", provs.Count)  

            Dim lp As LogProvider  
            For Each lp In provs  
                Console.WriteLine(lp.CreationName)  
            Next  

            pkg.LoggingOptions.SelectedLogProviders.Remove(0)  
            Console.WriteLine()  
            Console.WriteLine("Count after one has been removed {0}", provs.Count)  

            ' Test both the indexer and Contains method.  
            If logs.Contains(0) Then  
                Console.WriteLine("Index zero in collection contains:  {0}", logs(0).CreationName)  
            Else   
                Throw New Exception()  
            End If  

            ' Show the use of the GetEnumerator.  
            Dim myEnum As LogProviderEnumerator =  pkg.LogProviders.GetEnumerator()   
            Console.WriteLine("The collection contains the following values:")  
            While (myEnum.MoveNext()) &&(myEnum.Current <> Nothing)  
                Console.WriteLine("{0}", myEnum.Current.Name)  
            End While  
        End Sub  
    End Class  
End Namespace  

Salida de muestra:

Proveedores de registro disponibles en el paquete:

DTS. LogProviderTextFile.1

DTS. LogProviderSQLProfiler.1

DTS. LogProviderEventLog.1

DTS. LogProviderTextFile.1

Proveedores de registros seleccionados para paquete: 2

DTS. LogProviderTextFile.1

DTS. LogProviderEventLog.1

Cuenta después de que uno haya sido eliminado 1

El índice cero en la colección contiene: DTS. LogProviderTextFile.1

La colección contiene los siguientes valores:

{9A4FD6D3-7DE2-43AD-8B02-CE9B02E7504B}

{AB1C156F-8018-4063-A1A5-48E122CE6FFD}

{B8E93B36-36FE-4E65-9814-9752915E9E15}

{E586A867-86EC-4901-8F5A-C945D4469C46}

Comentarios

Si la llamada al Contains método devuelve true, puedes acceder al elemento especificado en la colección usando la sintaxis SelectedLogProviders[index]. Si el Contains método devuelve false, esta propiedad lanza una excepción. En C#, esta propiedad es el indexador de la SelectedLogProviders clase .

Se aplica a