Compartir a través de


Obtener los dispositivos y las suscripciones de un suscriptor

La clase Subscriber proporciona los métodos GetSubscriptions y GetDevices para ofrecer acceso a los registros de suscripción y de dispositivo de suscriptor relacionados con un suscriptor especificado.

Utilice el método GetSubscriptions de la clase Subscriber para devolver un objeto SubscriptionEnumeration que representa la colección de todas las suscripciones de una clase de suscripción en una aplicación para el suscriptor especificado.

Utilice el método GetDevices de la clase Subscriber para devolver un objeto SubscriberDeviceEnumeration que representa la colección de todos los dispositivos para el suscriptor especificado.

Ejemplo de código administrado: devolver suscripciones

En el ejemplo de código siguiente se muestra cómo utilizar un objeto Subscriber en código administrado para devolver el valor de un campo de suscripción para todas las suscripciones de un suscriptor en una clase de suscripción.

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

Ejemplo de código administrado: devolver dispositivos

En el ejemplo siguiente se muestra cómo utilizar un objeto Subscriber en código administrado para devolver todos los dispositivos que pertenecen a un suscriptor único.

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

Ejemplo de interoperabilidad COM: devolver suscripciones

En el ejemplo de código VBScript siguiente se muestra cómo utilizar un objeto Subscriber en código administrado para devolver el valor de un campo de suscripción para todas las suscripciones de un suscriptor en una clase de suscripción.

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

Ejemplo de interoperabilidad COM: devolver dispositivos

En el ejemplo de VBScript siguiente se muestra cómo utilizar un objeto Subscriber en código administrado para devolver todos los dispositivos que pertenecen a un suscriptor único.

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

Vea también

Conceptos

Crear un objeto de suscriptor
Agregar un registro de suscriptor
Actualizar un registro de suscriptor
Eliminar un registro de suscriptor
Eliminar información relacionada con la suscripción

Otros recursos

NSSubscriberView

Ayuda e información

Obtener ayuda sobre SQL Server 2005