Freigeben über


FabricClient.ServiceManagementClient.ServiceNotificationFilterMatched Ereignis

Definition

Wird ausgelöst, wenn ein ServiceNotificationFilterDescription zuvor über registrierter durch RegisterServiceNotificationFilterAsync(ServiceNotificationFilterDescription) die Endpunktänderungen eines Diensts im System abgeglichen wird.

public event EventHandler ServiceNotificationFilterMatched;
member this.ServiceNotificationFilterMatched : EventHandler 
Public Event ServiceNotificationFilterMatched As EventHandler 

Ereignistyp

Beispiele

Im folgenden Beispiel wird gezeigt, wie Sie sich für Dienstbenachrichtigungen registrieren und verarbeiten:

namespace ServiceNotificationsExample
{
    class Program
    {
        static void Main(string[] args)
        {
            var client = new FabricClient(new string[] { "[cluster_endpoint]:[client_port]" });

            var filter = new ServiceNotificationFilterDescription()
            {
                Name = new Uri("fabric:/my_application"),
                MatchNamePrefix = true,
            };

            client.ServiceManager.ServiceNotificationFilterMatched += (s, e) => OnNotification(e);

            var filterId = client.ServiceManager.RegisterServiceNotificationFilterAsync(filter).Result;

            Console.WriteLine(
                "Registered filter: name={0} id={1}",
                filter.Name,
                filterId);

            Console.ReadLine();

            client.ServiceManager.UnregisterServiceNotificationFilterAsync(filterId).Wait();

            Console.WriteLine(
                "Unregistered filter: name={0} id={1}",
                filter.Name,
                filterId);
        }

        private static void OnNotification(EventArgs e)
        {
            var castedEventArgs = (FabricClient.ServiceManagementClient.ServiceNotificationEventArgs)e;

            var notification = castedEventArgs.Notification;

            Console.WriteLine(
                "[{0}] received notification for service '{1}'",
                DateTime.UtcNow,
                notification.ServiceName);
        }
    }
}

Hinweise

Das Ereignisargument ist vom Typ FabricClient.ServiceManagementClient.ServiceNotificationEventArgs.

Gilt für: