订阅管理 API
生成订阅管理界面时,您将管理三种类型的对象:订阅方、订阅方设备和订阅。自定义应用程序使用 Notification Services 订阅管理 API 来创建、修改和删除这些对象。该 API 在内部存储和操作在实例和应用程序数据库中的订阅方和订阅信息。
Notification Services 还在实例和应用程序数据库中提供了视图,可以使用这些视图将基本订阅方、订阅方设备和订阅直接添加到数据库中。这些视图主要用于开发和测试应用程序。
重要提示: |
---|
请务必使用该 API 或视图来管理订阅方、订阅方设备和订阅数据,切勿直接操作基础表。 |
订阅管理 API
下图说明了订阅管理界面如何使用订阅管理对象来与 Notification Services 通信。
- Subscriber 对象表示一个订阅方。订阅方是由订阅方 ID 标识的用户或进程。订阅方数据存储在实例数据库中,因此可在应用程序之间共享订阅方。
- SubscriberDevice 对象表示订阅方的一个订阅方设备。订阅方设备是通知传递的传递端点,如电子邮件地址。
每个订阅方必须至少有一个订阅方设备。订阅方设备数据(如订阅方数据)存储在实例数据库中。
每个订阅方设备都有一个名称和地址,并与传递通道关联。传递通道表示一项特定的传递服务,该服务用于将通知传递给设备,如特定的简单邮件传输协议 (SMTP) 网关。在配置 Notification Services 实例时即可配置传递通道。 - Subscription 对象表示订阅方的一个订阅。订阅可以确定订阅方想要接收的通知。订阅属于特定的订阅类,并可以分为事件驱动订阅或预定的订阅。订阅可定义订阅类字段的值。
如果订阅类使用条件操作,则订阅还可以指定一个条件,用于确定是否应为订阅生成通知。应用程序必须使用 Microsoft.SqlServer.NotificationServices.Rules 命名空间中的类来支持条件开发。
订阅数据存储在应用程序数据库中。
订阅管理类
Microsoft.SqlServer.NotificationServices 命名空间中的以下类用于开发订阅管理界面。
类 | 说明 |
---|---|
Subscriber |
表示给定 Notification Services 实例中的单个订阅方。 |
表示给定 Notification Services 实例中的订阅方集合。 |
|
SubscriberDevice |
表示可以接收通知的设备。 |
表示订阅方设备集合。 |
|
Subscription |
表示单个订阅。 |
表示订阅集合。 |
|
表示格式化通知所针对的地理区域。 |
|
表示给定 Notification Services 实例中可用的订阅方区域设置集合。 |
|
表示用于预定的订阅的有效时区。 |
|
表示给定 Notification Services 实例中可用的时区集合。 |
|
表示为给定应用程序指定的订阅类。 |
|
表示给定 Notification Services 应用程序中的订阅类集合。 |
|
表示 Notification Services 应用程序。 |
|
表示 Notification Services 实例。 |
|
表示发生 Notification Services 应用程序错误时引发的异常。 |
订阅条件类
如果订阅类包含使用条件操作的规则,则将使用 Microsoft.SqlServer.NotificationServices.Rules 命名空间中的类以允许用户定义条件。
类 | 说明 |
---|---|
定义一组要使用 Boolean 逻辑 AND 来求值的条件。 |
|
如果测试参数界于最小值和最大值(含)之间,则计算结果为 true。 |
|
如果 Boolean 值参数为 True,则计算结果为 True。 |
|
表示一个包含预设值的参数。 |
|
表达式运算符。 |
|
表示通过计算简单算术表达式来确定值的参数。 |
|
表示一个从输入字段获取值的条件参数。 |
|
筛选器操作。 |
|
根据计算出的条件结果,定义一个输入表或视图的筛选器。筛选器规则由一个或多个筛选器语句组成。 |
|
以“IF 条件 THEN 操作”的格式说明逻辑语句。 |
|
表示通过 Transact-SQL 用户定义的函数获取值的参数。 |
|
如果它的参数为 NULL,则计算结果为 true。 |
|
针对相关筛选器规则的结果计算操作。 |
|
Link leaf 条件的运算符。 |
|
对其他条件的结果求反。 |
|
定义一组要使用 Boolean 逻辑 OR 进行逻辑计算的条件。 |
|
定义针对输入表或视图中的任何行计算结果为标量值的逻辑。属性规则由一个或多个属性语句组成。 |
|
以“IF 条件 THEN 结果”的格式说明一个逻辑语句(其结果为标量值)。 |
|
表示由此命名空间中的对象引发的异常。 |
|
表示通过计算其他规则来获取值的参数。 |
|
使用关系运算符来比较两个参数,并返回 Boolean 结果。 |
|
简单 link leaf 条件的运算符。 |
|
说明可用作规则的输入的表。 |
|
说明可用作规则的输入的视图。 |
订阅管理类
以上类用于管理订阅方、订阅方设备和订阅数据。如果要生成一个应用程序来管理 Notification Services 实例,请使用 Microsoft.SqlServer.Management.Nmo 命名空间中的以下类来启用和禁用订阅方和订阅。
类 | 说明 |
---|---|
提供用于启用和禁用订阅方管理的方法。 |
|
提供用于启用和禁用订阅管理的方法。 |
订阅管理视图
Notification Services 提供了用于管理订阅方数据的视图(主要用于应用程序测试)。有关详细信息,请参阅以下主题:
请参阅
概念
其他资源
开发订阅管理界面
管理订阅服务器
管理订阅方设备
管理订阅数据