我正在使用 som 自定义元素设置自定义 rss 提要。我需要添加一个带有自定义属性的自定义元素。
到目前为止,我已经设置了这样的提要:
var testItem = new SyndicationItem("title", "description", new Uri("http://myuri.com"));
customItem.ElementExtensions.Add("customElement", String.Empty, "fooBar");
将 testItem 添加到名为“items”的列表中,然后:
var feed = new SyndicationFeed("TestFeed", "FeedContent", new Uri("http://myuri.com"), items);
这会产生这样的东西......
<rss>
<channel>
<title>TestFeed</title>
<link>http://myuri.com</link>
<description>FeedContent</description>
<item>
<link>http://myprovider.com/contentid=1234</link>
<title>title</title>
<description>description</description>
<customElement>fooBar</customElement>
</item>
</channel>
</rss>
现在,如果我想同时添加一个自定义元素,然后向该元素添加自定义属性怎么办?
我可以像这样创建一个新的 SyndicationItem:
var customElement = new SyndicationItem();
然后像这样向它添加属性:
customElement.AttributeExtensions.Add(new XmlQualifiedName("myAttribute", ""), "someValue");
customElement.AttributeExtensions.Add(new XmlQualifiedName("anotherAttribute"), "someOtherValue");
然后将其添加到我的 testItem 以将其添加到我的 rss 提要中的项目列表中:
testItem.ElementExtensions.Add(customElement);
编译器吃掉它,但我得到一个运行时错误,我认为这是因为新元素没有名称。
除此之外,我找不到另一种方法
创建提要的 XmlDoc,然后开始向其附加元素和属性。
有必要这样做似乎很奇怪,我觉得我一定监督了一些事情..
有任何想法吗?