Creazione di una gestione connessione personalizzataCreating a Custom Connection Manager

I passaggi che è necessario effettuare per creare una gestione connessione personalizzata sono simili ai passaggi necessari per la creazione di qualsiasi altro oggetto personalizzato per Integration ServicesIntegration Services:The steps that you must follow to create a custom connection manager are similar to the steps for creating any other custom object for Integration ServicesIntegration Services:

  • Creare una nuova classe che eredita dalla classe di base.Create a new class that inherits from the base class. Per una gestione connessione, la classe di base è ConnectionManagerBase.For a connection manager, the base class is ConnectionManagerBase.

  • Applicare alla classe l'attributo che identifica il tipo di oggetto.Apply the attribute that identifies the type of object to the class. Per una gestione connessione, l'attributo è DtsConnectionAttribute.For a connection manager, the attribute is DtsConnectionAttribute.

  • Eseguire l'override dell'implementazione dei metodi e delle proprietà della classe di base.Override the implementation of the methods and properties of the base class. Per una gestione connessione, questi includono la proprietà ConnectionString e i metodi AcquireConnection e ReleaseConnection.For a connection manager, these include the ConnectionString property and the AcquireConnection and ReleaseConnection methods.

  • Se si desidera, sviluppare un'interfaccia utente personalizzata.Optionally, develop a custom user interface. Per una gestione connessione, è richiesta una classe tramite cui venga implementata l'interfaccia IDtsConnectionManagerUI.For a connection manager, this requires a class that implements the IDtsConnectionManagerUI interface.

Nota

La maggior parte delle attività, delle origini e delle destinazioni incluse in Integration ServicesIntegration Services funziona solo con tipi specifici di gestioni connessioni predefinite.Most of the tasks, sources, and destinations that have been built into Integration ServicesIntegration Services work only with specific types of built-in connection managers. Questi esempi, pertanto, non possono essere testati con le attività e i componenti predefiniti.Therefore, these samples cannot be tested with the built-in tasks and components.

Introduzione alle gestioni connessioni personalizzateGetting Started with a Custom Connection Manager

Creazione di progetti e classiCreating Projects and Classes

Poiché tutte le gestioni connessioni derivano dalla classe di base ConnectionManagerBase, il primo passaggio da completare quando si crea una gestione connessione personalizzata consiste nel creare un progetto di libreria di classi nel linguaggio di programmazione gestito preferito e creare una classe che eredita dalla classe di base.Because all managed connection managers derive from the ConnectionManagerBase base class, the first step when you create a custom connection manager is to create a class library project in your preferred managed programming language and create a class that inherits from the base class. In questa classe derivata si eseguirà l'override dei metodi e delle proprietà della classe di base per implementare la funzionalità personalizzata.In this derived class, you will override the methods and properties of the base class to implement your custom functionality.

Nella stessa soluzione creare un secondo progetto di libreria di classi per l'interfaccia utente personalizzata.In the same solution, create a second class library project for the custom user interface. Per semplificare lo sviluppo, si consiglia di utilizzare un assembly distinto per l'interfaccia utente, perché in questo modo è possibile e ridistribuire la gestione connessione o la relativa interfaccia utente in modo indipendente.A separate assembly for the user interface is recommended for ease of deployment because it lets you update and redeploy the connection manager or its user interface independently.

Configurare entrambi i progetti per firmare gli assembly che verranno generati durante la compilazione utilizzando un file di chiave con nome sicuro.Configure both projects to sign the assemblies that will be generated at build time by using a strong name key file.

Applicazione dell'attributo DtsConnectionApplying the DtsConnection Attribute

Applicare l'attributo DtsConnectionAttribute alla classe creata per identificarla come gestione connessione.Apply the DtsConnectionAttribute attribute to the class that you have created to identify it as a connection manager. Questo attributo fornisce informazioni in fase di progettazione, ad esempio il nome, la descrizione e il tipo di connessione della gestione connessione.This attribute provides design-time information such as the name, description, and connection type of the connection manager. Il ConnectionType e descrizione le proprietà corrispondenti al tipo e descrizione le colonne visualizzate nel Aggiungi gestione connessione SSIS nella finestra di dialogo viene visualizzata quando si configurano le connessioni per un pacchetto in SQL Server Data Tools (SSDT)SQL Server Data Tools (SSDT).The ConnectionType and Description properties correspond to the Type and Description columns displayed in the Add SSIS Connection Manager dialog box, which is displayed when configuring connections for a package in SQL Server Data Tools (SSDT)SQL Server Data Tools (SSDT).

Utilizzare la proprietà UITypeName per collegare la gestione connessione alla relativa interfaccia utente personalizzata.Use the UITypeName property to link the connection manager to its custom user interface. Per ottenere il token di chiave pubblica che è necessario per questa proprietà, è possibile utilizzare sn.exe -t per visualizzare il token di chiave pubblica dal file di coppia di chiavi (con estensione snk) che si intende utilizzare per firmare l'assembly dell'interfaccia utente.To obtain the public key token that is required for this property, you an use sn.exe -t to display the public key token from the key pair (.snk) file that you intend to use to sign the user interface assembly.

<DtsConnection(ConnectionType:="SQLVB", _  
  DisplayName:="SqlConnectionManager (VB)", _  
  Description:="Connection manager for Sql Server", _  
  UITypeName:="SqlConnMgrUIVB.SqlConnMgrUIVB,SqlConnMgrUIVB,Version=1.0.0.0,Culture=neutral,PublicKeyToken=<insert public key token here>")> _  
Public Class SqlConnMgrVB  
  Inherits ConnectionManagerBase  
  . . .  
End Class  
[DtsConnection(ConnectionType = "SQLCS",  
  DisplayName = "SqlConnectionManager (CS)",  
  Description = "Connection manager for Sql Server",  
  UITypeName = "SqlConnMgrUICS.SqlConnMgrUICS,SqlConnMgrUICS,Version=1.0.0.0,Culture=neutral,PublicKeyToken=<insert public key token here>")]  
public class SqlConnMgrCS :  
ConnectionManagerBase  
{  
  . . .  
}  

Compilazione, distribuzione e debug di una gestione connessione personalizzataBuilding, Deploying, and Debugging a Custom Connection Manager

I passaggi per la compilazione, la distribuzione e il debug di una gestione connessione personalizzata in Integration ServicesIntegration Services sono simili a quelli richiesti per altri tipi di oggetti personalizzati.The steps for building, deploying, and debugging a custom connection manager in Integration ServicesIntegration Services are similar to the steps for other types of custom objects. Per ulteriori informazioni, vedere compilazione, distribuzione e debug di oggetti personalizzati.For more information, see Building, Deploying, and Debugging Custom Objects.

Vedere ancheSee Also

Codifica una gestione connessione personalizzata Coding a Custom Connection Manager
Sviluppo di un'interfaccia utente per una gestione connessione personalizzataDeveloping a User Interface for a Custom Connection Manager