Share via


Abrufen der Geräte und Abonnements eines Abonnenten

Die Subscriber-Klasse stellt die Methoden GetSubscriptions und GetDevices für den Zugriff auf die Abonnentengerät- und Abonnementdatensätze bereit, die zu einem angegebenen Abonnenten gehören.

Verwenden Sie die GetSubscriptions-Methode der Subscriber-Klasse zum Zurückgeben eines SubscriptionEnumeration-Objekts, das die Auflistung aller Abonnements einer Abonnementklasse in einer Anwendung für den angegebenen Abonnenten darstellt.

Verwenden Sie die GetDevices-Methode der Subscriber-Klasse zum Zurückgeben eines SubscriberDeviceEnumeration-Objekts, das die Auflistung aller Geräte für den angegebenen Abonnenten darstellt.

Beispiel für verwalteten Code: Zurückgeben von Abonnements

Das folgende Codebeispiel zeigt, wie ein Subscriber-Objekt in verwaltetem Code für das Zurückgeben des Wertes für ein Abonnementfeld für alle Abonnements eines Abonnenten in einer Abonnementklasse verwendet wird.

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

Beispiel für verwalteten Code: Zurückgeben von Geräten

Das folgende Beispiel zeigt, wie ein Subscriber-Objekt in verwaltetem Code für das Zurückgeben von allen Geräten, die zu einem einzelnen Abonnenten gehören, verwendet wird.

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

Beispiel für COM-Interop: Zurückgeben von Abonnements

Das folgende VBScript-Codebeispiel zeigt, wie ein Subscriber-Objekt in verwaltetem Code für das Zurückgeben des Wertes für ein Abonnementfeld für alle Abonnements eines Abonnenten in einer Abonnementklasse verwendet wird.

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!"

Beispiel für COM-Interop: Zurückgeben von Geräten

Das folgende VBScript-Beispiel zeigt, wie ein Subscriber-Objekt in verwaltetem Code für das Zurückgeben von allen Geräten, die zu einem einzelnen Abonnenten gehören, verwendet wird.

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!"

Siehe auch

Konzepte

Erstellen eines Subscriber-Objekts
Hinzufügen eines Abonnentendatensatzes
Aktualisieren eines Abonnentendatensatzes
Löschen eines Abonnentendatensatzes
Löschen von verwandten Abonnementinformationen

Andere Ressourcen

NSSubscriberView

Hilfe und Informationen

Informationsquellen für SQL Server 2005