NSInstance.ErrorEventHandler Delegate

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

Espace de noms: Microsoft.SqlServer.NotificationServices
Assembly: Microsoft.SqlServer.NotificationServices (in microsoft.sqlserver.notificationservices.dll)

Syntaxe

'Déclaration
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 prend en charge l'utilisation de délégués, mais pas la déclaration de nouveaux délégués.

Paramètres

  • sender
    The NSInstance object that raised the error.

Notes

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.

Exemple

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

Plateformes

Plateformes de développement

Pour obtenir la liste des plateformes prises en charge, consultez Configuration matérielle et logicielle requise pour l'installation de SQL Server 2005.

Plateformes cibles

Pour obtenir la liste des plateformes prises en charge, consultez Configuration matérielle et logicielle requise pour l'installation de SQL Server 2005.

Voir aussi

Référence

Microsoft.SqlServer.NotificationServices Namespace