配置内容格式化程序
订阅规则生成通知时,它会将原始通知数据插入通知表中。该数据是订阅方所需要的,但在传递前必须将其转换为可读格式。内容格式化会将原始通知数据转换为为目标设备和区域设置自定义的友好文本。
本主题讨论内容格式化如何运行及如何为您的应用程序定义内容格式化程序。有关标准内容格式化程序的信息,请参阅 XSLT 内容格式化程序。有关自定义内容格式化程序的信息,请参阅开发自定义内容格式化程序。
格式化通知
Notification Services 生成一批通知后,这批通知被分成多个工作项,每个工作项中的通知将使用相同的传递通道进行传递。然后,分发服务器会选取工作项,并使其中的通知可用于通知类的内容格式化程序。
内容格式化程序获取工作项中的通知,然后将原始数据转换为适合于最终收件人的消息。内容格式化程序可使用设备和区域设置信息按设备和位置自定义通知。例如,如果通知将通过电子邮件发送给讲法语的订阅方,则内容格式化程序可将原始通知数据转换为包含法语文本的电子邮件。
然后,分发服务器会获取已格式化的通知字符串,添加传递协议标头并将通知分发到传递通道。
定义内容格式化程序
定义通知类时,必须通过指定内容格式化程序的类名称、程序集名称和参数来为该类通知配置内容格式化程序。
配置内容格式化程序
- 如果在 XML 中定义应用程序,请使用 ContentFormatter Element (ADF) 配置内容格式化程序。
- 如果使用 Notification Services 管理对象 (NMO) 定义应用程序,则在 ContentFormatter 对象中定义内容格式化程序,然后使用 ContentFormatter 属性将内容格式化程序与 NotificationClass 对象相关联。
类名称
必须提供实现内容格式化程序的类的名称。
- 对于自定义内容格式化程序,类名必须为包含任何命名空间前缀的完全限定名称。有关命名空间命名约定的详细信息,请参阅 Microsoft MSDN Library 中的命名空间命名指南。
- 对于标准 XSLT 内容格式化程序,仅提供名称(即 XsltFormatter)即可。有关实现 XSLT 内容格式化程序的详细信息,请参阅 XSLT 内容格式化程序。
定义类名称
- ClassName Element for ContentFormatter (ADF)
- 使用 ContentFormatter 类属性 (NMO) 的 Name 属性
程序集名称
如果定义自定义内容格式化程序,请提供包含内容格式化程序类的程序集的名称。该名称必须包含完全限定路径或完全限定程序集名称。
如果定义 XSLT 内容格式化程序,则省略程序集名称。下列参考主题中介绍了执行该操作的详细信息。
定义程序集名称
参数
Notification Services 可将参数传递给内容格式化程序。如果内容格式化程序使用参数,请在内容格式化程序定义中提供参数的名称和值。
如果您使用第三方开发的内容格式化程序,则该内容格式化程序应附带有关必需参数和可选参数的文档。XSLT 内容格式化程序 一节中列出了 XSLT 内容格式化程序的参数。
定义参数的名称和值
- 如果通过 XML 定义应用程序,请使用 Arguments Element for ContentFormatter (ADF) 来定义参数。
- 如果使用 NMO 定义应用程序,则在 ContentFormatterArgument 对象中定义各个参数,然后使用 ContentFormatterArguments 属性将它们添加到 NotificationClass 对象中的 ContentFormatterArgumentCollection 中。
请参阅
概念
定义通知架构
指定摘要或多播传递
指定通知批次大小
指定通知到期时间
开发自定义内容格式化程序
其他资源
XSLT 内容格式化程序
定义通知类
配置传递协议
定义通知类
定义 Notification Services 应用程序