Trabalhando com gerenciadores de conexões programaticamente

Aplica-se a: SQL Server SSIS Integration Runtime em Azure Data Factory

Nos Serviços de Integração, o método AcquireConnection da classe associada gestor de conexões é o método que mais frequentemente chama quando trabalha com gestores de ligação em código gerido. Quando escreve código gerido, tem de chamar o método AcquireConnection para usar a funcionalidade de um gestor de conexões. Tens de chamar este método independentemente de estares a escrever código gerido numa tarefa Script, componente Script, objeto personalizado ou aplicação personalizada.

Para usar o método AcquireConnection com sucesso, tem de conhecer as respostas às seguintes perguntas:

  • Que gestores de ligação retornam um objeto gerido do método AcquireConnection?

    Muitos gestores de ligação devolvem objetos COM não geridos (System.__ComObject) e estes objetos não podem ser facilmente usados a partir de código gerido. A lista destes gestores de ligações inclui o frequentemente utilizado gestor de ligações OLE DB.

  • Para aqueles gestores de ligação que retornam um objeto gerido, que objetos retornam os seus métodos AcquireConnection?

    Para lançar o valor de retorno para o tipo apropriado, tem de saber que tipo de objeto o método AcquireConnection devolve. Por exemplo, o método AcquireConnection para o gestor de conexões ADO.NET devolve um objeto SqlConnection aberto quando usa o fornecedor SqlClient. No entanto, o método AcquireConnection para o gestor de conexões de ficheiros apenas devolve uma string.

Este tópico responde a estas questões para os gestores de ligação incluídos nos Serviços de Integração.

Gestores de Ligação que Não Devolvem um Objeto Gerido

A tabela seguinte lista os gestores de ligação que retornam um objeto COM nativo (System.__ComObject) do método AcquireConnection. Estes objetos não geridos não podem ser facilmente usados a partir de código gerido.

Tipo de Gestor de Ligações Nome do Gestor de Ligações
ADO Gerenciador de conexões ADO
MSOLAP90 Gerenciador de conexões do Analysis Services
EXCEL Gerenciador de conexões do Excel
FTP Gestor de Ligações FTP
HTTP Gerenciador de conexões HTTP
ODBC Gerenciador de conexões ODBC
OLEDB Gerenciador de conexões OLE DB

Normalmente, pode usar um gestor de ligação ADO.NET a partir de código gerido para se ligar a uma fonte de dados ADO, Excel, ODBC ou OLE DB.

Valores de retorno do método AcquireConnection

A tabela seguinte lista os gestores de ligação que retornam um objeto gerido do método AcquireConnection. Estes objetos geridos podem ser facilmente usados a partir de código gerido.

Tipo de Gestor de Ligações Nome do Gestor de Ligações Tipo de Valor de Retorno Informações adicionais
ADO.NET ADO.NET Gestor de Ligação System.Data.SqlClient.SqlConnection
FILE Gestor de Ligações de Ficheiros System.String Caminho para o arquivo.
FICHEIRO PLANO Gerenciador de conexões de arquivo simples System.String Caminho para o arquivo.
MSMQ Gerenciador de conexões MSMQ System.Messaging.MessageQueue
ARQUIVO MÚLTIPLO Gerenciador de conexões de vários arquivos System.String Caminho para um dos ficheiros.
MULTIFLATFILE Gerenciador de conexões de vários arquivos simples System.String Caminho para um dos ficheiros.
SMOServer Gerenciador de conexões SMO Microsoft. SqlServer.Management.Smo.Server
SMTP Gerenciador de conexões SMTP System.String Por exemplo: SmtpServer=<server name>;UseWindowsAuthentication=True;EnableSsl=False;
WMI Gerenciador de conexões WMI System.Management.ManagementScope
SQLMOBILE SQL Server Compact Gestor de Ligações System.Data.SqlServerCe.SqlCeConnection