Developing a Custom Connection Manager
Integration Services uses connection managers to encapsulate the information needed to connect to an external data source. Integration Services includes a variety of connection managers that support connections to the most commonly used data sources, from enterprise databases to text files and Excel worksheets. If the connection managers and external data sources supported by Integration Services do not entirely meet your requirements, you can create a custom connection manager.
To create a custom connection manager, you have to create a class that inherits from the T:Microsoft.SqlServer.Dts.Runtime.ConnectionManagerBase base class, apply the T:Microsoft.SqlServer.Dts.Runtime.DtsConnectionAttribute attribute to your new class, and override the important methods and properties of the base class, including the P:Microsoft.SqlServer.Dts.Runtime.ConnectionManagerBase.ConnectionString property and the M:Microsoft.SqlServer.Dts.Runtime.ConnectionManagerBase.AcquireConnection(System.Object) method.
Most of the tasks, sources, and destinations that have been built into Integration Services work only with specific types of built-in connection managers. Before developing a custom connection manager for use with built-in tasks and components, check whether those components restrict the list of available connection managers to those of a specific type. If your solution requires a custom connection manager, you might also have to develop a custom task, or a custom source or destination, for use with the connection manager.
This section describes how to create, configure, and code a custom connection manager and its optional custom user interface. The code snippets shown in this section are drawn from the Sql Server Custom Connection Manager Sample.
- Creating a Custom Connection Manager
Describes how to create the classes for a custom connection manager project.
- Coding a Custom Connection Manager
Describes how to implement a custom connection manager by overriding the methods and properties of the base class.
- Developing a User Interface for a Custom Connection Manager
Describes how to implement the user interface class and the form that is used to configure the custom connection manager.
For information that is common to all the type of custom objects that you can create in Integration Services, see the following topics:
- Developing Custom Objects for Integration Services
Describes the basic steps in implementing all types of custom objects for Integration Services.
- Persisting Custom Objects
Describes custom persistence and explains when it is necessary.
- Building, Deploying, and Debugging Custom Objects
Describes the techniques for building, signing, deploying, and debugging custom objects.
For information on the other types of custom objects that you can create in Integration Services, see the following topics:
- Developing a Custom Task
Discusses how to program custom tasks.
- Developing a Custom Log Provider
Discusses how to program custom log providers.
- Developing a Custom ForEach Enumerator
Discusses how to program custom enumerators.
- Developing a Custom Data Flow Component
Discusses how to program custom data flow sources, transformations, and destinations.