IWebEventCustomEvaluator.CanFire(WebBaseEvent, RuleFiringRecord) 方法

定義

評估事件是否應該引發。

public:
 bool CanFire(System::Web::Management::WebBaseEvent ^ raisedEvent, System::Web::Management::RuleFiringRecord ^ record);
public bool CanFire (System.Web.Management.WebBaseEvent raisedEvent, System.Web.Management.RuleFiringRecord record);
abstract member CanFire : System.Web.Management.WebBaseEvent * System.Web.Management.RuleFiringRecord -> bool
Public Function CanFire (raisedEvent As WebBaseEvent, record As RuleFiringRecord) As Boolean

參數

raisedEvent
WebBaseEvent

要引發的事件。

record
RuleFiringRecord

RuleFiringRecord,包含關於事件的資訊。

傳回

如果要引發事件則為 true,否則為 false

範例

下列程式碼範例示範 方法的自訂實作 CanFire

// Implements the IWebEventCustomEvaluator.CanFire 
// method. It is called by the ASP.NET if this custom
// type is configured in the profile
// element of the healthMonitoring section.
public bool CanFire(
    System.Web.Management.WebBaseEvent e, 
    RuleFiringRecord rule)
{

    bool fireEvent;
    string lastFired = rule.LastFired.ToString();
    string timesRaised = rule.TimesRaised.ToString();

    // Fire every other event raised.
    fireEvent =
        (rule.TimesRaised % 2 == 0) ? true : false;

    if (fireEvent)
    {
        firingRecordInfo =
            string.Format("Event last fired: {0}",
            lastFired) +
            string.Format(". Times raised: {0}",
            timesRaised);
    }
    else
        firingRecordInfo =
          string.Format(
           "Event not fired. Times raised: {0}",
           timesRaised);

    return fireEvent;
}
' Implements the IWebEventCustomEvaluator.CanFire 
' method. It is called by the ASP.NET if this custom
' type is configured in the profile
' element of the healthMonitoring section.
Public Function CanFire( _
ByVal e As System.Web.Management.WebBaseEvent, _
ByVal rule As RuleFiringRecord) As Boolean _
Implements System.Web.Management.IWebEventCustomEvaluator.CanFire

    Dim fireEvent As Boolean
    Dim lastFired As String = _
        rule.LastFired.ToString()
    Dim timesRaised As String = _
        rule.TimesRaised.ToString()

    ' Fire every other event raised.
    fireEvent = _
    IIf(rule.TimesRaised Mod 2 = 0, True, False)

    If fireEvent Then
        firingRecordInfo = String.Format( _
        "Event last fired: {0}", lastFired) + _
        String.Format( _
        ". Times raised: {0}",  timesRaised) 
      
    Else
        firingRecordInfo = String.Format( _
        "Event not fired. Times raised: {0}", _
        timesRaised)
    End If

    Return fireEvent

End Function 'CanFire

備註

如果自訂事件評估工具傳 true 回 ,則會引發事件,然後由相關聯的提供者處理。

適用於