联合扩展性

联合 API 是专为提供不限制格式的编程模型而设计的,该编程模型允许将联合内容以各种格式写入到网络中。 抽象数据模型由以下类组成:

这些类紧密映射到 Atom 1.0 规范中定义的构造,尽管某些名称不同。

联合协议的关键功能是扩展性。 Atom 1.0 和 RSS 2.0 都向未在规范中定义的聚合源添加属性和元素。 Windows Communication Foundation (WCF) 联合编程模型提供了以下处理自定义属性和扩展、松散类型访问和派生新类的方法。

松散类型访问

通过派生新类来添加扩展需要编写其他代码。 另一种选择是以松散类型方式访问扩展。 联合抽象数据模型中定义的所有类型都包含AttributeExtensionsElementExtensions命名的属性(有一个例外,SyndicationContent有一个AttributeExtensions属性,但没有ElementExtensions属性)。 这些属性是未分别由 TryParseAttributeTryParseElement 方法处理的扩展的集合。 可以通过在SyndicationElementExtensionCollection.ReadElementExtensionsElementExtensionsSyndicationFeedSyndicationItemSyndicationLink的属性上调用SyndicationPerson来访问这些未处理的扩展。SyndicationCategory 这组方法查找具有指定名称和命名空间的所有扩展,将它们单独反序列化为实例 TExtension ,并将它们作为对象的集合 TExtension 返回。

派生新类

可以从任何现有的抽象数据模型类派生新类。 当实现一个应用程序并且您在其中使用的大多数源具有特殊扩展时,执行此操作。 在本主题中,程序使用的大多数源都包含一个 MyExtension 扩展。 若要提供改进的编程体验,请执行以下步骤:

另请参阅