NSInstance.ErrorEventHandler Delegate

Represents the method that will handle the Error event of an NSInstance.

命名空间: Microsoft.SqlServer.NotificationServices
程序集: Microsoft.SqlServer.NotificationServices (in microsoft.sqlserver.notificationservices.dll)

语法

声明
Public Delegate Sub ErrorEventHandler ( _
    sender As Object, _
    e As ErrorEventArgs _
)
public delegate void ErrorEventHandler (
    Object sender,
    ErrorEventArgs e
)
public delegate void ErrorEventHandler (
    Object^ sender, 
    ErrorEventArgs^ e
)
/** @delegate */
public delegate void ErrorEventHandler (
    Object sender, 
    ErrorEventArgs e
)
JScript 支持委托的使用,但不支持新委托的声明。

参数

  • sender
    The NSInstance object that raised the error.

备注

When you host the Notification Services engine, implement this delegate to be notified of fatal errors that terminate the thread running the Notification Services engine. If the engine thread throws a fatal error that is not otherwise handled, Notification Services logs the error and calls this delegate.

示例

While the instance is running, it may encounter run-time errors. These errors are reported back to the hosting process through a NSInstance.ErrorEventHandler delegate that is invoked when the Error event is triggered. When the event is raised, the delegate is called to notify the host, and the instance is stopped.

The following example shows how to respond to this event:

// Define an error handler for the hosted execution engine.
private void InstanceErrorHandler(object sender, ErrorEventArgs e)
{
    Console.WriteLine (e.GetException ().ToString ());
}

// Start and stop the hosted execution engine.
public void ErrorHandlingStartStop()
{
    try
    {
        // Instantiate the Notification Services instance.
        NSInstance nsInstance = new NSInstance("FlightInstance");

        // Add an error handler to the instance.
        nsInstance.Error += 
            new NSInstance.ErrorEventHandler(InstanceErrorHandler);

        // Start the instance.
        Console.WriteLine("Starting instance...");
        nsInstance.StartInstance();

        // Check the IsRunning property to verify that 
        // this process is running the instance.
        if (nsInstance.IsRunning == true)
            Console.WriteLine("The instance is running.");
        else
            Console.WriteLine("The instance is NOT running!");


        // Stop the instance.
        Console.WriteLine("Stopping instance...");
        nsInstance.StopInstance();
    }
    catch (Exception ex)
    {
        Console.WriteLine(ex.Message);
    }
}

平台

开发平台

有关支持的平台列表,请参阅安装 SQL Server 2005 的硬件和软件要求。

目标平台

有关支持的平台列表,请参阅安装 SQL Server 2005 的硬件和软件要求。

请参阅

参考

Microsoft.SqlServer.NotificationServices Namespace