Поделиться через


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);
    }
}

Платформы

Платформы разработки

Список поддерживаемых платформ см. в разделе Hardware and Software Requirements for Installing SQL Server 2005.

Целевые платформы

Список поддерживаемых платформ см. в разделе Hardware and Software Requirements for Installing SQL Server 2005.

См. также

Справочник

Microsoft.SqlServer.NotificationServices Namespace