Criando um gerenciador de conexões personalizado
Aplica-se a: Tempo de execução de integração do SSIS do SQL Server no Azure Data Factory
As etapas a seguir para criar um gerenciador de conexões personalizado são semelhantes às etapas de criação de qualquer outro objeto personalizado do Integration Services:
Crie uma classe nova herdada da classe base. Para um gerenciador de conexões, a classe base é ConnectionManagerBase.
Aplique o atributo que identifica o tipo de objeto para a classe. Para um gerenciador de conexões, o atributo é DtsConnectionAttribute.
Substitua a implementação dos métodos e propriedades da classe base. Para um gerenciador de conexões, eles incluem a propriedade ConnectionString e os métodos AcquireConnection e ReleaseConnection.
Opcionalmente, desenvolva uma interface de usuário personalizada. Para um gerenciador de conexões, isso requer uma classe que implemente a interface IDtsConnectionManagerUI.
Observação
A maioria das tarefas, fontes e destinos incluídos no Integration Services funcionam somente com tipos específicos de gerenciadores de conexões internos. Portanto, esses exemplos não podem ser testados com as tarefas e componentes internos.
Guia de Introdução com um gerenciador de conexões personalizado
Criando projetos e classes
Como todos os gerenciadores de conexões gerenciados derivam da classe base ConnectionManagerBase, o primeiro passo para criar um gerenciador de conexões personalizado é criar um projeto de biblioteca de classes na linguagem de programação gerenciada de sua preferência e criar uma classe herdada da classe base. Nessa classe derivada, você substituirá os métodos e propriedades da classe base para implementar sua funcionalidade personalizada.
Na mesma solução, crie um segundo projeto de biblioteca de classe para a interface de usuário personalizada. Recomenda-se um assembly separado para a interface do usuário para facilitar a implantação, pois ela permite que você atualize e implemente de novo o gerenciador de conexões ou sua interface do usuário de forma independente.
Configure ambos os projetos para atribuir os assemblies que serão gerados no momento de compilação usando um arquivo de chave de nome forte.
Aplicando o atributo DtsConnection
Aplique o atributo DtsConnectionAttribute à classe que você criou para identificá-la como um gerenciador de conexões. Esse atributo fornece informações de tempo de design como o nome, a descrição e o tipo de conexão do gerenciador de conexões. As propriedades ConnectionType e Description correspondem às colunas Tipo e Descrição exibidas na caixa de diálogo Adicionar Gerenciador de Conexões SSIS, exibida ao configurar conexões para um pacote no SQL Server Data Tools (SSDT).
Use a propriedade UITypeName para vincular o gerenciador de conexões à sua interface do usuário personalizada. Para obter o token de chave pública exigido para essa propriedade, você pode usar o sn.exe -t para exibir o token de chave pública por meio do arquivo de par de chaves (.snk) a ser usado para assinar o assembly da interface do usuário.
<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
{
. . .
}
Compilando, implantando e depurando um gerenciador de conexões personalizado
As etapas para compilar, implantar e depurar um gerenciador de conexões personalizado no Integration Services são semelhantes às etapas para outros tipos de objetos personalizados. Para obter mais informações, consulte Compilar, implantar e depurar objetos personalizados.
Consulte Também
Codificando um gerenciador de conexões personalizado
Desenvolvendo uma interface do usuário para um gerenciador de conexões personalizado