Поделиться через


Создание пользовательского диспетчера соединений

Создание пользовательского диспетчера соединений осуществляется за несколько шагов аналогично созданию любого другого пользовательского объекта служб Integration Services.

  • Создайте новый класс, наследующий базовый класс. Для диспетчера соединений базовым классом является ConnectionManagerBase.

  • Примените к классу атрибут, определяющий тип объекта. Для диспетчера соединений используется атрибут DtsConnectionAttribute.

  • Переопределите реализацию методов и свойств базового класса. Для диспетчера соединений это свойство ConnectionString, методы AcquireConnection и ReleaseConnection.

  • При необходимости разработайте собственный пользовательский интерфейс. В случае с диспетчером соединений для этого необходимо использовать класс, реализующий интерфейс IDtsConnectionManagerUI.

Образцы пользовательских диспетчеров соединений см. в образцах служб Integration Services в разделе Codeplex. Примеры кода, приведенные в этом разделе, являются производными от образца Sql Server Custom Connection Manager.

ПримечаниеПримечание

Большая часть задач, источников и назначений в службах Integration Services работает только с определенными типами встроенных диспетчеров соединений. Поэтому данные образцы нельзя протестировать с помощью встроенных задач и компонентов.

Приступая к работе над пользовательским диспетчером соединений

Создание проектов и классов

Так как все управляемые диспетчеры соединений являются производными от базового класса ConnectionManagerBase, на первом шаге создания пользовательского диспетчера соединений необходимо создать проект библиотеки классов на предпочитаемом языке программирования управляемого кода, а затем создать класс, наследующий от базового класса. В этом производном классе необходимо переопределить методы и свойства базового класса, чтобы реализовать пользовательскую функциональность.

Создайте в том же решении второй проект библиотеки классов для собственного пользовательского интерфейса. Для пользовательского интерфейса рекомендуется использовать отдельную сборку, что позволяет обновлять и заново развертывать диспетчер соединений или его пользовательский интерфейс независимо друг от друга.

Настройте в обоих проектах подписывание сборок, которые будут создаваться во время построения, с помощью файла ключа для строгого имени.

Применение атрибута DtsConnection

Примените к созданному классу атрибут DtsConnectionAttribute, чтобы определить его в качестве диспетчера соединений. Этот атрибут содержит сведения для времени разработки, например, имя, описание и тип соединения диспетчера соединений. Свойства ConnectionType и Description соответствуют столбцам Тип и Описание в диалоговом окне Добавление диспетчера соединений со службами SSIS, которое отображается при настройке соединений пакета в среде Business Intelligence Development Studio.

Используйте свойство UITypeName, чтобы связать диспетчер соединений с его пользовательским интерфейсом. Чтобы получить лексему открытого ключа, необходимую для этого свойства, можно использовать команду sn.exe -t, отображающую лексему открытого ключа из SNK-файла пары ключей, который предназначен для подписывания сборки пользовательского интерфейса.

<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
{
  . . .
}

Построение, развертывание и отладка пользовательского диспетчера соединений

Построение, развертывание и отладка пользовательского диспетчера соединений в службах Integration Services осуществляется в несколько шагов, аналогичных используемым при работе с другими типами пользовательских объектов. Дополнительные сведения см. в разделе Построение, развертывание и отладка пользовательских объектов.

Значок служб Integration Services (маленький) Будьте в курсе новых возможностей служб Integration Services

Чтобы загружать новейшую документацию, статьи, образцы и видеоматериалы от корпорации Майкрософт, а также лучшие решения от участников сообщества, посетите страницу служб Integration Services на узлах MSDN или TechNet:

Чтобы получать автоматические уведомления об этих обновлениях, подпишитесь на RSS-каналы, предлагаемые на этой странице.

Журнал изменений

Обновления

  • Добавлено примечание, объясняющее, почему нестандартные образцы нельзя протестировать с помощью встроенных задач и компонентов служб Integration Services.