배달 채널 목록 채우기
응용 프로그램이 전자 메일 기반 배달 채널과 Windows Messenger 배달 채널 등과 같은 여러 배달 채널을 지원하는 경우 구독자가 구독자 장치를 만든 후 개별 구독에 대해 해당 구독자 장치를 선택할 수 있도록 배달 채널 목록을 제공할 수 있습니다.
SQL Server 2005에서 NMO(Notification Services Object Model)는 인스턴스 및 응용 프로그램 속성을 열거하기 위한 클래스를 제공합니다. 배달 채널을 열거하려면 인스턴스의 DeliveryChannels 속성을 사용하여 Notification Services 인스턴스에 대해 정의된 배달 채널 모음을 가져옵니다. NMO 클래스는 Microsoft.SqlServer.Smo 어셈블리에 있는 Microsoft.SqlServer.Management.Nmo 네임스페이스에 있습니다.
Notification Services 인스턴스에 제공된 모든 배달 채널이 일부 응용 프로그램에 적합하지 않을 수도 있습니다. 사용자 인터페이스에서 응용 프로그램에 적합한 배달 채널만 제공하는지 확인하십시오.
관리 코드 예
다음 코드 예에서는 인스턴스의 DeliveryChannels 속성을 사용하여 Notification Services 인스턴스에 대해 정의된 배달 채널 모음을 가져오는 방법을 보여 줍니다.
[!참고] 다음 예에서는 Microsoft.SqlServer.Management.Smo 어셈블리에 대한 참조가 필요합니다. Microsoft.SqlServer.Management.Nmo 및 Microsoft.SqlServer.Management.Smo 네임스페이스는 둘 다 SMO 어셈블리에 있습니다. 클래스의 네임스페이스를 지정하기 위해 이 예에서는
nmo
및smo
네임스페이스 별칭을 사용합니다.
이 예를 실행할 때는 다음 using
지시어를 사용합니다.
using System;
using Microsoft.SqlServer.NotificationServices;
using nmo = Microsoft.SqlServer.Management.Nmo;
using smo = Microsoft.SqlServer.Management.Smo;
그런 후 다음 코드를 사용하여 배달 채널을 열거합니다.
// Specify the Database Engine instance that hosts the
// Notificaiton Services instance and get a reference to
// the NotificationServices object.
smo.Server server = new smo.Server("MyServer");
nmo.NotificationServices notificationServices = server.NotificationServices;
// Get the Notification Services instance.
nmo.Instance nsinst = notificationServices.Instances ["Tutorial"];
// Get the instance's collection of delivery channels.
nmo.DeliveryChannelCollection dcCollection = nsinst.DeliveryChannels;
// Enumerate the delivery channels.
foreach (nmo.DeliveryChannel dc in dcCollection)
{
Console.WriteLine(dc.Name);
}
COM Interop 예
NMO는 COM interop을 지원하지 않습니다. COM interop을 사용하여 배달 채널을 열거해야 할 경우에는 Microsoft.SqlServer.NotificationServices 네임스페이스의 더 이상 사용되지 않는 DeliveryChannel 및 DeliveryChannelEnumeration 클래스를 사용하여 Notification Services 인스턴스에 대해 정의된 배달 채널 모음을 가져와야 합니다.
Dim testInstance, testDeliveryChannelEnumeration
const instanceName = "Tutorial"
' Create the NSInstance object.
set testInstance = WScript.CreateObject( _
"Microsoft.SqlServer.NotificationServices.NSInstance")
testInstance.Initialize instanceName
' Create the DeliveryChannelEnumeration object.
set testDeliveryChannelEnumeration = WScript.CreateObject( _
"Microsoft.SqlServer.NotificationServices.DeliveryChannelEnumeration")
testDeliveryChannelEnumeration.Initialize (testInstance)
' Step through the enumeration, printing the
' delivery channel names.
for each channel in testDeliveryChannelEnumeration
Wscript.Echo "Delivery Channel: ", _
channel.DeliveryChannelName
next
wscript.echo "Done!"
참고 항목
개념
SubscriberDevice 개체 만들기
구독자 장치 추가
구독자 장치 업데이트
구독자 장치 삭제