为什么我在每个SyndicationItem元素上都有我的命名空间

本文关键字:我的 命名空间 元素 SyndicationItem 为什么 | 更新日期: 2023-09-27 18:21:06

我正试图找出为什么我的命名空间(xmlns:ren="http://www.example.com/rss2/ext")出现在每个自定义syndicationItem元素(<ren:rssTranslationType typeId="1" xmlns:ren="http://www.example.com/rss2/ext">Original Content</ren:rssTranslationType>)上,而它已经在文件顶部声明了?奇怪的是,只有在.rss文件被读取到syndicationFeed>contents-updated>然后吐出之后,才会发生这种情况。创建一个新的rss文件可以很好地工作(没有额外的名称空间使用)。

为什么我在每个SyndicationItem元素上都有我的命名空间

这似乎治愈了它: XmlWriterSettings settings = new XmlWriterSettings{Indent = true, NamespaceHandling = NamespaceHandling.OmitDuplicates};

 using (XmlWriter xmlWriter = XmlWriter.Create(sourcePath, settings))
            {
                rssFeedData.SaveAsRss20(xmlWriter);
            }