这是我尝试的代码:
var items = xdoc.Descendants("item")
.Select(item => new
{
MyImage = (string)item.Elements("enclosure")
.Select(i => i.Attribute("url").Value)
.SingleOrDefault()
})
.ToList();
以下是它在xml文件中的外观:
<item>
<enclosure url="http://ep00.epimg.net/politica/imagenes/2013/06/22/actualidad/1371899226_298900_1371917547_miniatura_normal.jpg" length="6409" type="image/jpeg" />
</item>
我想做的就是抓住网址
感谢任何形式的帮助
答案 0 :(得分:1)
更改
MyImage = (string)item.Elements("enclosure")
.Select(i => i.Attribute("url").Value)
.SingleOrDefault()
到
MyImage = (string)item.Element("enclosure").Attribute("url").Value
如果您不想检查null,可以尝试these XML extensions并将其写成:
MyImage = item.Get("enclosure/url", "");
答案 1 :(得分:0)
这并不难:
var result = xdoc.Descendants("item").Select(n =>
n.Element("enclosure").Attribute("enclosure").Value);
答案 2 :(得分:0)
如果涉及名称空间,则如果未包含名称空间,则.Elements(name)
将不匹配。要测试是否是这种情况,请尝试使用.Elements(name)
替换.Elements().Where(e => e.Name.LocalName == name)
的实例。