言語

EventInfos.Add メソッド

定義

現在のEventInfosコレクションにEventInfoオブジェクトを追加します。

public:
 void Add(System::String ^ eventName, System::String ^ description, bool allowEventHandlers, cli::array <System::String ^> ^ parameterNames, cli::array <TypeCode> ^ parameterTypes, cli::array <System::String ^> ^ parameterDescriptions);
public void Add(string eventName, string description, bool allowEventHandlers, string[] parameterNames, TypeCode[] parameterTypes, string[] parameterDescriptions);
member this.Add : string * string * bool * string[] * TypeCode[] * string[] -> unit
Public Sub Add (eventName As String, description As String, allowEventHandlers As Boolean, parameterNames As String(), parameterTypes As TypeCode(), parameterDescriptions As String())

パラメーター

eventName
String

カスタム イベントの名前です。

description
String

イベントの記述を含む文字列です。

allowEventHandlers
Boolean

開発ツールがイベントハンドラオブジェクトの作成を許可するかどうかを示すブール数です。 もし正しければ、イベント用にイベントハンドラオブジェクトを作成できます。

parameterNames
String[]

イベントに渡されるパラメータの配列。

parameterTypes
TypeCode[]

配列内の各パラメータの型 parameterNames

parameterDescriptions
String[]

parameterNamesの各パラメータの記述を含む配列です。

以下の例は、カスタムイベントが EventInfos コレクションに追加される様子を示しています。

public override void InitializeTask(Connections connections, VariableDispenser variables, IDTSInfoEvents events, IDTSLogging log, EventInfos eventInfos, LogEntryInfos logEntryInfos, ObjectReferenceTracker refTracker)  
{  
    this.eventInfos = eventInfos;  
    string[] paramNames = new string[1];  
    TypeCode[] paramTypes = new TypeCode[1]{TypeCode.Int32};  
    string[] paramDescriptions = new string[1];  

    paramNames[0] = "InitialValue";  
    paramDescriptions[0] = "The value before increment.";  

    this.eventInfos.Add("OnBeforeIncrement","Fires before the task increments the value.",true,paramNames,paramTypes,paramDescriptions);  
    this.onBeforeIncrement = this.eventInfos["OnBeforeIncrement"];  

    paramDescriptions[0] = "The value after increment.";  
    this.eventInfos.Add("OnAfterIncrement","Fires after the initial value is updated.",true,paramNames, paramTypes,paramDescriptions);  
    this.onAfterIncrement = this.eventInfos["OnAfterIncrement"];  
}  
Public Overrides Sub InitializeTask(ByVal connections As Connections, ByVal variables As VariableDispenser, ByVal events As IDTSInfoEvents, ByVal log As IDTSLogging, ByVal eventInfos As EventInfos, ByVal logEntryInfos As LogEntryInfos, ByVal refTracker As ObjectReferenceTracker)   
    Me.eventInfos = eventInfos  
    Dim paramNames(0) As String  
    Dim paramTypes(0) As TypeCode = {TypeCode.Int32}  
    Dim paramDescriptions(0) As String  

    paramNames(0) = "InitialValue"  
    paramDescriptions(0) = "The value before increment."  

    Me.eventInfos.Add("OnBeforeIncrement", "Fires before the task increments the value.", True, paramNames, paramTypes, paramDescriptions)  
    Me.onBeforeIncrement = Me.eventInfos("OnBeforeIncrement")  

    paramDescriptions(0) = "The value after increment."  
    Me.eventInfos.Add("OnAfterIncrement", "Fires after the initial value is updated.", True, paramNames, paramTypes, paramDescriptions)  
    Me.onAfterIncrement = Me.eventInfos("OnAfterIncrement")  
End Sub  

注釈

EventInfosコレクションとAddメソッドの例については、「カスタムタスクの開発」を参照してください。

適用対象