次の方法で共有


サブスクリプション フィールド情報の取得

Subscription クラスに用意されている GetFieldName メソッドと GetFieldOrdinal メソッドを使用すると、サブスクリプション フィールド情報にアクセスできます。

GetFieldName メソッドは、指定された序数に基づいてフィールドの名前を返します。GetFieldOrdinal メソッドは、指定された名前に基づいてフィールドの序数を返します。

以下の例は、マネージ コードを使用してサブスクリプション フィールド情報を取得する方法と、Microsoft Visual Basic Scripting Edition (VBScript) を使用してサブスクリプション フィールド情報を取得する方法 (COM 相互運用の一例) を示しています。

マネージ コードの例

以下の例は、マネージ コードで Subscription オブジェクトを使用し、サブスクリプション フィールドの名前情報を返す方法を示しています。

string instanceName = "Tutorial";
string applicationName= "Weather";
string subscriptionClassName= "WeatherCity";
string fieldName = "City";
int ordinal = 2;

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

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

// Create the Subscription object.
Subscription testSubscription =
    new Subscription(testApplication, subscriptionClassName);

// Use the GetFieldName method to return a field name
Console.WriteLine("Name of field " + ordinal.ToString() + ": " + 
    testSubscription.GetFieldName(ordinal));

// Use the GetFieldOrdinal to return a field ordinal
Console.WriteLine("Ordinal for the " + fieldName + " field: " +
    testSubscription.GetFieldOrdinal(fieldName));

COM 相互運用の例

以下の VBScript の例は、アンマネージ コードで Subscription オブジェクトを使用し、サブスクリプション フィールドの名前情報を返す方法を示しています。

Dim testInstance, testApplication, testSubscription, _ 
    ordinal, fieldName

const instanceName = "Tutorial"
const applicationName = "Weather"
const subscriptionClassName = "WeatherCity"
ordinal = 2

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

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

' Create the Subscription object.
set testSubscription = WScript.CreateObject( _
    "Microsoft.SqlServer.NotificationServices.Subscription")
testSubscription.Initialize (testApplication), subscriptionClassName

' Get the name for a field identified by ordinal.
fieldName = testSubscription.GetFieldName(ordinal)
WScript.Echo "Field Name: ", fieldName 

' Get the field ordinal for the field.
fieldName = testSubscription.GetFieldOrdinal(fieldName)
WScript.Echo "Field Ordinal: ", fieldName 

参照

概念

Subscription オブジェクトの作成
サブスクリプションの追加
サブスクリプションの更新
サブスクリプションの削除
サブスクライバ ロケール一覧の作成
タイム ゾーン一覧の作成

その他の技術情報

NS<SubscriptionClassName>View

ヘルプおよび情報

SQL Server 2005 の参考資料の入手