使用 RSS 和 Atom 馈送
Sync Framework Web 同步组件允许副本使用 RSS 或 Atom 馈送并将馈送项应用于自己的数据存储。Sync Framework 在内部将该馈送表示为同步提供程序并使用其他 Sync Framework 组件在馈送提供程序和表示副本的提供程序之间同步馈送项。因此,应用程序只需要实现从馈送所提供的 XML 格式转换 ID 和项数据的方法。Sync Framework 负责执行常见同步任务,如检测变更、检测冲突和将变更应用到数据存储。
为了使用馈送,应用程序创建馈送使用方对象并提供以下项:
一个同步提供程序,它表示要应用转换的馈送项的副本。
ID 和项转换器对象。
包含要使用的 RSS 或 Atom 馈送的流。
应用程序然后调用馈送使用方对象的相应方法来使用馈送。为了使用馈送,Sync Framework 在同步提供程序中包装馈送并启动一个同步会话,该会话使用馈送提供程序作为源提供程序,并且将本地提供程序作为目标提供程序。在处理期间,Sync Framework 调用 ID 和项转换器将 ID 和项数据转换为副本使用的格式。然后,本地提供程序将项变更应用到副本。处理完成后,副本将包含从 FeedSync 馈送使用的项。
有关实现 ID 和项转换器对象的更多信息,请参见为 RSS 和 Atom 馈送转换 ID 和项。
有关 FeedSync 馈送的更多信息,请参见 FeedSync 网站。
通过使用托管代码来使用馈送
若要使用 FeedSync 馈送,请首先通过使用 FeedConsumer 并为其传递以下对象来创建一个 FeedConsumer 对象:
由应用程序实现的 FeedIdConverter 对象。
由应用程序实现的 FeedItemConverter 对象。
KnowledgeSyncProvider 对象,它表示要应用转换的馈送项的副本。
然后,调用 ConsumeFeed 并为其传递包含要使用的 RSS 或 Atom 馈送的 Stream 对象。处理完成后,副本将包含从此馈送使用的项。
通过使用非托管代码来使用馈送
若要使用馈送,请首先通过将 CLSID_FeedSyncServices 和 IID_IFeedProducerConsumerServices 传递给 CoCreateInstance 函数来创建一个 IProducerConsumerServices 实例。然后,通过使用 IFeedProducerConsumerServices::CreateFeedConsumer 创建 IFeedConsumer 对象。
为了使用馈送,调用 IFeedConsumer::ConsumeFeed 并为其传递以下对象:
由应用程序实现的 IFeedIdConverter 对象。
由应用程序实现的 IFeedItemConverter 对象。
ISyncProvider 对象,它表示要应用转换的馈送项的副本。
包含要使用的 RSS 或 Atom 馈送的 IStream 对象。
处理完成后,副本将包含从 IStream 对象所含的馈送使用的项。
请参阅
参考
IFeedProducerConsumerServices 接口
IFeedConsumer 接口
Microsoft.Synchronization.FeedSync
FeedConsumer