Partager via


Accès aux périphériques et aux abonnements d'un abonné

La classe Subscriber fournit les méthodes GetSubscriptions et GetDevices pour permettre d'accéder aux enregistrements de périphérique d'abonné et d'abonnement associés à un abonné spécifié.

Utilisez la méthode GetSubscriptions de la classe Subscriber pour renvoyer un objet SubscriptionEnumeration qui représente la collection de tous les abonnements d'une classe d'abonnement dans une application pour l'abonné spécifié.

Utilisez la méthode GetDevices de la classe Subscriber pour renvoyer un objet SubscriberDeviceEnumeration qui représente la collection de tous les périphériques pour l'abonné spécifié.

Exemple de code managé : Retour d'abonnements

L'exemple de code suivant montre comment utiliser un objet Subscriber en code managé pour retourner la valeur d'un champ d'abonnement pour tous les abonnements d'un abonné dans une classe d'abonnement.

string instanceName = "Tutorial";
string applicationName = "Weather";
string subscriptionClassName = "WeatherCity";
string subscriptionFieldName = "City";

// Create the NSInstance object.
NSInstance testInstance = new NSInstance(instanceName);

// Create the Subscriber object.
Subscriber testSubscriber = new Subscriber(testInstance);

// Set the subscriber ID so that the
// correct records are retrieved. 
testSubscriber.SubscriberId = "TestUser1";

// Create the NSApplication object.
NSApplication testApplication =
    new NSApplication(testInstance, applicationName);

// Retrieve the subscriber's subscriptions.
SubscriptionEnumeration testSubscriptionEnumeration =
    testSubscriber.GetSubscriptions
    (testApplication, subscriptionClassName);

foreach (Subscription singleSub in testSubscriptionEnumeration)
{
    Console.WriteLine(singleSub[subscriptionFieldName].ToString());
}
Console.ReadLine();

Exemple de code managé : Retour de périphériques

L'exemple suivant illustre l'utilisation d'un objet Subscriber en code managé pour renvoyer tous les périphériques appartenant à un abonné unique.

string instanceName = "Tutorial";

// Create the NSInstance object.
NSInstance testInstance = new NSInstance(instanceName);

// Create the Subscriber object.
Subscriber testSubscriber = new Subscriber(testInstance);

// Set the subscriber ID so that the
// correct records are retrieved. 
testSubscriber.SubscriberId = "TestUser1";

// Retrieve the subscriber's devices.
SubscriberDeviceEnumeration testSubscriberDeviceEnumeration =
    testSubscriber.GetDevices();

// Print each device to the console.
foreach (SubscriberDevice singleSubDevice in
    testSubscriberDeviceEnumeration)
{
    Console.WriteLine(singleSubDevice.DeviceName);
}
Console.ReadLine();

Exemple COM Interop : Retour d'abonnements

L'exemple de code VBScript suivant montre comment utiliser un objet Subscriber en code managé pour renvoyer la valeur d'un champ d'abonnement pour tous les abonnements d'un abonné dans une classe d'abonnement.

Dim testInstance, testSubscriber, _
    testApplication, testSubscriptionEnumeration

const instanceName = "Tutorial"
const applicationName = "Weather"
const subscriptionClassName = "WeatherCity"
const subscriptionFieldName = "City"

' Create the NSInstance object.
set testInstance = WScript.CreateObject( _ 
    "Microsoft.SqlServer.NotificationServices.NSInstance")
testInstance.Initialize instanceName

' Create the Subscriber object.
set testSubscriber = WScript.CreateObject( _ 
    "Microsoft.SqlServer.NotificationServices.Subscriber")
testSubscriber.Initialize (testInstance)

' Create the NSApplication object.
set testApplication = WScript.CreateObject( _ 
    "Microsoft.SqlServer.NotificationServices.NSApplication")
testApplication.Initialize (testInstance), applicationName

' Set the subscriber ID
testSubscriber.SubscriberID = "TestUser2"

' Retrieve a subscriber's subscriptions.
set testSubscriptionEnumeration = _ 
    testSubscriber.GetSubscriptions((testApplication), _ 
      subscriptionClassName)

' Print field value
for each subscription in testSubscriptionEnumeration
        Wscript.Echo "Field Value", _ 
            subscription.GetFieldValue(subscriptionFieldName)
next

wscript.echo "Done!"

Exemple COM Interop : Retour de périphériques

L'exemple VBScript suivant montre comment utiliser un objet Subscriber en code managé pour renvoyer tous les périphériques appartenant à un abonné unique.

Dim testInstance, testSubscriber, testSubscriberDeviceEnumeration
const instanceName = "Tutorial"

' Create the NSInstance object.
set testInstance = WScript.CreateObject( _ 
    "Microsoft.SqlServer.NotificationServices.NSInstance")
testInstance.Initialize instanceName

' Create the Subscriber object.
set testSubscriber = WScript.CreateObject( _ 
    "Microsoft.SqlServer.NotificationServices.Subscriber")
testSubscriber.Initialize (testInstance)

' Set the subscriber ID so that the
testSubscriber.SubscriberId = "TestUser2"

' Retrieve the subscriber's devices.
set testSubscriberDeviceEnumeration = testSubscriber.GetDevices

for each singleSubDevice in testSubscriberDeviceEnumeration
    Wscript.Echo "Device Name:", singleSubDevice.DeviceName
next

wscript.echo "Done!"

Voir aussi

Concepts

Création d'un objet Subscriber
Ajout d'un enregistrement d'abonné
Mise à jour d'un enregistrement d'abonné
Suppression d'un enregistrement d'abonné
Suppression d'informations relatives aux abonnements associés

Autres ressources

NSSubscriberView

Aide et Informations

Assistance sur SQL Server 2005