自定义事件提供程序

自定义事件提供程序是一些自定义组件,用于向 Notification Services 应用程序提交事件数据。开发自定义事件提供程序时,必须确定要开发的事件提供程序的类型、事件数据的源和用于提交数据的 API。

自定义事件提供程序的类型

自定义事件提供程序可以是宿主提供程序,也可以是非宿主(独立)提供程序。宿主事件提供程序由 Notification Services 引擎的提供程序宿主运行。

由于宿主事件提供程序可以充分利用 Notification Services 提供程序宿主,因此比较容易开发。另外,宿主事件提供程序还可以像其他 Notification Services 组件一样被启用和禁用。有关开发宿主事件提供程序的详细信息,请参阅开发宿主事件提供程序

非宿主事件提供程序在 Notification Services 系统外部运行。如果您有现成的基础结构可用于提供事件,或者要按需提交事件,则这些非宿主事件提供程序会很有用。有关开发非宿主事件提供程序的详细信息,请参阅开发非宿主事件提供程序

收集事件数据

收集数据的方法很多。例如,可以查询数据库,分析 XML 文件或通过 Microsoft Windows 或 Web 窗体提交数据。应用程序中将数据推送给事件提供程序的操作或计划的数据源轮询都可触发收集数据。

了解数据源、格式和收集模式,有助于选择事件提交 API。

事件提交 API

确定了数据源后,可以选择事件提交 API。Notification Services 有三种事件提交 API:

  • 如果可用 XML 格式提供数据,则可使用 EventLoader 类来将 XML 数据源的一个或多个事件写入应用程序数据库。内置文件系统观察器事件提供程序使用 EventLoader 类。
  • 如果数据在 SQL Server 数据库中,则可使用事件提交存储过程来写入单个事件,也可使用 Transact-SQL 查询来收集和提交数据。内置的 SQL Server 事件提供程序使用这些存储过程。
  • 如果有任何其他的事件源,则可使用托管事件提交 API。使用这个 API,可以为每个事件创建一个 Event 对象,然后使用 EventCollector 对象将事件收集到一个批中,并将该批提交给应用程序数据库。

在每个 API 中,都以批量方式将事件提交给数据库。仅当提交了事件批次后,应用程序才能使用事件。

以下关系图阐释了这些事件提交 API:

事件处理体系结构

使用自定义事件提供程序

若要使用自定义事件提供程序,就必须在应用程序定义中声明它。有关详细信息,请参阅定义事件提供程序

请参阅

概念

使用托管事件提交 API
使用 XML 事件加载器 API
使用事件提交存储过程

其他资源

开发自定义事件提供程序

帮助和信息

获取 SQL Server 2005 帮助