联合扩展性

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

这些类严格地映射到 Atom 1.0 规范中定义的构造,但有一些名称会不相同。

联合协议的一个主要功能是扩展性。 Atom 1.0 和 RSS 2.0 均向规范中未定义的联合源中添加属性和元素。 Windows Communication Foundation (WCF) 联合编程模型提供了以下使用自定义属性和扩展、松散类型访问以及派生新类的方式。

松散类型访问

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

派生新类

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

请参阅