建立自訂工作
建立自訂工作所需的步驟類似於為 Integration Services 建立任何其他自訂物件的步驟:
建立從基底類別繼承的新類別。對於工作而言,基底類別是 Task。
將可識別物件類型的屬性套用至類別。對於工作而言,屬性是 DtsTaskAttribute。
(選擇性) 開發自訂使用者介面。對於工作而言,這需要實作 IDtsTaskUI 介面的類別。
如需自訂工作的工作範例,請參閱 Codeplex 網站上的 Integration Services 範例 (英文)。
自訂工作使用者入門
建立專案和類別
因為所有的 Managed 工作都是從 Task 基底類別衍生,所以建立自訂工作時的第一個步驟是以慣用的 Managed 程式語言建立類別庫專案,並建立從基底類別繼承的類別。在此衍生的類別中,您將覆寫基底類別的方法與屬性,以實作自訂功能。
在相同的方案中,為自訂使用者介面建立另一個類別庫專案。建議為使用者介面使用不同的組件以便能輕鬆地部署,因為它允許您獨立地更新和重新部署連接管理員或是其使用者介面。
透過使用強式名稱金鑰檔,將兩個專案都設定成簽署將在建立時期產生的組件。
套用 DtsTask 屬性
將 DtsTaskAttribute 屬性套用至您已建立的類別,以便將它識別為工作。此屬性提供如名稱、描述和工作類別等設計階段資訊。
使用 UITypeName 屬性將工作連結至其自訂使用者介面。若要取得此屬性所需的公開金鑰 Token,您可以使用 sn.exe -t,從想要用以簽署使用者介面組件的金鑰組 (.snk) 檔案顯示公開金鑰 Token。
using System;
using Microsoft.SqlServer.Dts.Runtime;
namespace Microsoft.SSIS.Samples
{
[DtsTask
(
DisplayName = "MyTask",
IconResource = "MyTask.MyTaskIcon.ico",
UITypeName = "My Custom Task," +
"Version=1.0.0.0," +
"Culture = Neutral," +
"PublicKeyToken = 12345abc6789de01",
TaskType = "PackageMaintenance",
TaskContact = "MyTask; company name; any other information",
RequiredProductLevel = DTSProductLevel.None
)]
public class MyTask : Task
{
// Your code here.
}
}
Imports System
Imports Microsoft.SqlServer.Dts.Runtime
<DtsTask(DisplayName:="MyTask", _
IconResource:="MyTask.MyTaskIcon.ico", _
UITypeName:="My Custom Task," & _
"Version=1.0.0.0,Culture=Neutral," & _
"PublicKeyToken=12345abc6789de01", _
TaskType:="PackageMaintenance", _
TaskContact:="MyTask; company name; any other information", _
RequiredProductLevel:=DTSProductLevel.None)> _
Public Class MyTask
Inherits Task
' Your code here.
End Class 'MyTask
建置、部署和偵錯自訂工作
在 Integration Services 中建立、部署和偵錯自訂工作的步驟,類似於其他類型的自訂物件所需的步驟。如需詳細資訊,請參閱<建立、部署和偵錯自訂物件>。
|