IDTSRuntimeConnection100.ConnectionManager Property

Definition

Gets or sets the IDTSConnectionManager100 object referenced by the run-time connection object.

public:
 property Microsoft::SqlServer::Dts::Runtime::Wrapper::IDTSConnectionManager100 ^ ConnectionManager { Microsoft::SqlServer::Dts::Runtime::Wrapper::IDTSConnectionManager100 ^ get(); void set(Microsoft::SqlServer::Dts::Runtime::Wrapper::IDTSConnectionManager100 ^ value); };
[System.Runtime.InteropServices.DispId(102)]
public Microsoft.SqlServer.Dts.Runtime.Wrapper.IDTSConnectionManager100 ConnectionManager { [System.Runtime.InteropServices.DispId(102)] get; [System.Runtime.InteropServices.DispId(102)] set; }
[<System.Runtime.InteropServices.DispId(102)>]
[<get: System.Runtime.InteropServices.DispId(102)>]
[<set: System.Runtime.InteropServices.DispId(102)>]
member this.ConnectionManager : Microsoft.SqlServer.Dts.Runtime.Wrapper.IDTSConnectionManager100 with get, set
Public Property ConnectionManager As IDTSConnectionManager100

Property Value

The IDTSConnectionManager100 of the component.

Attributes

Examples

The following code example shows how the ConnectionManager property is set when programmatically loading a package.

// TODO: Replace the path to the package with a valid path.  
string package = @"c:\Package.dtsx";  

// Create the application and load the package.  
Application a = new Application();  
Package p = a.LoadPackage( package , null );  

// Walk the Executables collection looking for data flow tasks.  
foreach (Executable e in p.Executables)  
{  
    MainPipe mp = ((TaskHost)e).InnerObject as MainPipe;  
    if( e != null )  
    {  
        // Walk the components.  
        foreach( IDTSComponentMetaData100 md in mp.ComponentMetaDataCollection )  
        {  
            // Walk the RuntimeConnectionCollection.  
            foreach( IDTSRuntimeConnection100 rc in md.RuntimeConnectionCollection )  
            {  
                // Check to see if the package's connections collection contains the   
                // Connectionmanager stored in the RuntimeConnection.  
                if (p.Connections.Contains(rc.ConnectionManagerID))  
                    rc.ConnectionManager = DtsConvert.ToConnectionManager100(p.Connections[rc.ConnectionManagerID]);  
                else  
                    Console.WriteLine("The ConnectionManager " + rc.ConnectionManagerID + " was not found in the Package's Connections collection.");  
            }  
        }  
    }  
}  
' TODO: Replace the path to the package with a valid path.  
Dim package As String = "c:\Package.dtsx"   

' Create the application and load the package.  
Dim a As Application = New Application   
Dim p As Package = a.LoadPackage(package, Nothing)   

' Walk the Executables collection looking for data flow tasks.  
For Each e As Executable In p.Executables   
 Dim mp As MainPipe = CType(CType(e, TaskHost).InnerObject, MainPipe)   
 If Not (e Is Nothing) Then   
   ' Walk the components.  
   For Each md As IDTSComponentMetaData100 In mp.ComponentMetaDataCollection   
     ' Walk the RuntimeConnectionCollection.  
     For Each rc As IDTSRuntimeConnection100 In md.RuntimeConnectionCollection   
       ' Check to see whether the package's connections collection    
       '  contains the Connectionmanager stored in the RuntimeConnection.  
       If p.Connections.Contains(rc.ConnectionManagerID) Then   
         rc.ConnectionManager = DtsConvert.ToConnectionManager100(p.Connections(rc.ConnectionManagerID))   
       Else   
         Console.WriteLine("The ConnectionManager " + rc.ConnectionManagerID + " was not found in the Package's Connections collection.")   
       End If   
     Next   
   Next   
 End If   
Next  

Remarks

The ConnectionManager property contains, or sets, a reference to the actual instance of the IDTSConnectionManager100 object contained in the package. At runtime, this reference is set automatically by the SSIS runtime engine using the ConnectionManagerID property to locate the connection in the package and assign a reference.

At design time SSIS Designer does this assignment when loading and initializing a component. However, when programmatically loading and editing a component, using the object model outside of the designer, the property must be set explicitly. Components do not have the ability to reference the connection explicitly using the ConnectionManagerID property because the Connections collection of the package is not exposed to components.

Applies to