IWebEventCustomEvaluator.CanFire(WebBaseEvent, RuleFiringRecord) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
计算是否应该引发某个事件。
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
,则会引发事件,然后由关联的提供程序处理。