語言

EventInfos.Add 方法

定義

將物件 EventInfo 加入目前 EventInfos 的集合。

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  

備註

關於集合與Add方法的範例EventInfos,請參見「開發自訂任務」。

適用於