TemplatedMailWebEventProvider Class
Implements an event provider that uses templates to define and format e-mails it sends for event notifications.
Assembly: System.Web (in System.Web.dll)
ASP.NET health monitoring allows production and operations staff to manage deployed Web applications. The System.Web.Management namespace contains the health event types responsible for packaging application health-status data and the provider types responsible for processing this data. It also contains supporting types that help during the management of health events.
This class is not intended to be used from your code. It is created, configured, and used by the ASP.NET health-monitoring system to send event notifications by e-mail. You can define an e-mail Web event provider in a configuration file, as demonstrated in the Example section of this topic. In addition, you can configure the providers section programmatically by accessing the HealthMonitoringSection::Providers property.
The e-mail this class produces is defined and formatted using a template. This template consists of markup code defined in a standard .aspx file that outputs the text for the message body. The event information used by the template is provided by a MailEventNotificationInfo object that is available from the static CurrentNotification property of this class.
This provider has a comprehensive set of configuration attributes that you can use to customize the way it works.
| Topic | Location |
|---|---|
| How to: Send E-mail for Health Monitoring Notifications | Building ASP .NET Web Applications |
| How to: Send E-mail for Health Monitoring Notifications | Building ASP .NET Web Applications |
The following example is a configuration file excerpt that shows how to specify a provider of type SimpleMailWebEventProvider in the <healthMonitoring> section The <add> elements in the <rules> section specify that the provider will handle request-processing errors and infrastructure errors.
<system.web>
<healthMonitoring
enabled="true"
heartBeatInterval="0">
<bufferModes>
<add name="Critical Notification"
maxBufferSize="100"
maxFlushSize="20"
urgentFlushThreshold="1"
regularFlushInterval="Infinite"
urgentFlushInterval="00:01:00"
maxBufferThreads="1"
/>
</bufferModes>
<providers>
<add name="CriticalMailEventProvider"
type="System.Web.Management.TemplatedMailWebEventProvider,
System.Web, Version=%ASSEMBLY_VERSION%, Culture=neutral,
PublicKeyToken=%MICROSOFT_PUBLICKEY%"
template="../mailtemplates/critical.aspx"
from="sender address"
to="someone@example.com"
cc="someone@example.com"
bcc="someone@example.com"
priority="High"
bodyHeader="Warning!"
bodyFooter="Please investigate ASAP."
subjectPrefix="Action required."
buffer="true"
bufferMode="Critical Notification"
maxEventLength="4096"
maxSize="4096"
maxMessagesPerNotification="1"
/>
</providers>
<eventMappings>
<add name="Request Processing Events"
type="System.Web.Management.WebRequestEvent, System.Web",
Version=%ASSEMBLY_VERSION%, Culture=neutral,
PublicKeyToken=%MICROSOFT_PUBLICKEY%"
/>
<add name="Infrastructure Errors"
type="System.Web.Management.WebErrorEvent, System.Web,
Version=%ASSEMBLY_VERSION%, Culture=neutral,
PublicKeyToken=%MICROSOFT_PUBLICKEY%"
/>
</eventMappings>
<profiles>
<add name="Default"
minInstances="1"
maxLimit="Infinite"
minInterval="00:10:00"
/>
<add name="Critical"
minInstances="1"
maxLimit="1024"
minInterval="00:00:00"
/>
</profiles>
<rules>
<add name="Request Processing Errors"
eventName="Request Processing Errors"
provider="CriticalMailEventProvider"
profile="Default"
/>
<add name="Infrastructure Notifications"
eventName="Infrastructure Errors"
provider="CriticalMailEventProvider"
profile="Critical"
/>
</rules>
</healthMonitoring>
</system.web>
- AspNetHostingPermission
for operating in a hosted environment. Demand value: LinkDemand; Permission value: Minimal.
System.Configuration.Provider::ProviderBase
System.Web.Management::WebEventProvider
System.Web.Management::BufferedWebEventProvider
System.Web.Management::MailWebEventProvider
System.Web.Management::TemplatedMailWebEventProvider
Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98
The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.