我需要xml文件重复项。在“item”里面我有像title,pubdate,description,dc:creator和repeatwp这样的字段:comment ...请参阅下面的xml文件..
<channel>
<item>
<title>What Messed With My Head: Summit 2011</title>
<link>http://www.wcablog.com/2011/08/what-messed-with-my-head-summit-2011/</link>
<pubDate>Fri, 26 Aug 2011 09:10:04 +0000</pubDate>
<dc:creator>willowcreekassociation</dc:creator>
<guid isPermaLink="false">http://www.wcablog.com/?p=1706</guid>
<description></description>
<content:encoded>
<![CDATA[text here]]>
</content:encoded>
<wp:comment>
<wp:comment_id>1016</wp:comment_id>
<wp:comment_author><![CDATA[]]></wp:comment_author>
<wp:comment_author_email>thelmabowlen@gmail.com</wp:comment_author_email>
<wp:comment_author_url></wp:comment_author_url>
<wp:comment_author_IP></wp:comment_author_IP>
<wp:comment_date>2011-08-26 20:13:00</wp:comment_date>
<wp:comment_content><![CDATA[some text ]]></wp:comment_content>
</wp:comment>
<wp:comment>
<wp:comment_id>1016</wp:comment_id>
<wp:comment_author><![CDATA[]]></wp:comment_author>
<wp:comment_author_email>thelmabowlen@gmail.com</wp:comment_author_email>
<wp:comment_author_url></wp:comment_author_url>
<wp:comment_author_IP></wp:comment_author_IP>
<wp:comment_date>2011-08-26 20:13:00</wp:comment_date>
<wp:comment_content><![CDATA[some text ]]></wp:comment_content>
</wp:comment>
</item>
<item>
<title>What Messed With My Head: Summit 2011</title>
<link>http://www.wcablog.com/2011/08/what-messed-with-my-head-summit-2011/</link>
<pubDate>Fri, 26 Aug 2011 09:10:04 +0000</pubDate>
<dc:creator>willowcreekassociation</dc:creator>
<guid isPermaLink="false">http://www.wcablog.com/?p=1706</guid>
<description></description>
<content:encoded>
<![CDATA[text here]]>
</content:encoded>
</item>
<item>
<title>What Messed With My Head: Summit 2011</title>
<link>http://www.wcablog.com/2011/08/what-messed-with-my-head-summit-2011/</link>
<pubDate>Fri, 26 Aug 2011 09:10:04 +0000</pubDate>
<dc:creator>willowcreekassociation</dc:creator>
<guid isPermaLink="false">http://www.wcablog.com/?p=1706</guid>
<description></description>
<content:encoded>
<![CDATA[text here]]>
</content:encoded>
<wp:comment></wp:comment>
<wp:comment></wp:comment>
</item>
</channel>
我正在使用以下代码来阅读xml ..
XDocument xDoc = XDocument.Load("willowcreekassociationblog.wordpress.xml");
var list = xDoc.Descendants("Occurrence")
.Select(o => new List.XMLList
{
title = (string)o.Element("title"),
URL = (string)o.Element("link"),
Descr = (string)o.Element("Description"),
StartDate = (DateTime)o.Element("pubdate"),
})
.ToList();
但是我不知道如何读取wp:用上面的代码评论......有谁能帮我怎么做?
答案 0 :(得分:0)
你还没有说出你想对数据做什么,这使得这个问题难以回答。您还没有显示定义wp
命名空间别名的位置,但是嘿......
您希望在Select
电话中
Comments = o.Elements(wp + "comment")
.Select(comment => Comment.FromXElement(comment))
.ToList();
我觉得在域对象中提供静态方法很有帮助,这些方法可以从XElement
执行转换 - 它可以让事情更清晰。
FromXElement
就像是:
public static Comment FromXElement(XElement x)
{
return new Comment((int) x.Element(wp + "comment_id"),
(string) x.Element(wp + "author"),
...);
}