我想在XML文件中解析并显示每个'item'
的图片和描述。我无法弄清楚图像部分,我只能连接'description'
来显示它:
.ASPX:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Image ID="imgAmberIMG" runat="server" />
<asp:Label ID="lblDescription" runat="server"></asp:Label>
</div>
</form>
</body>
</html>
代码背后:
Imports System.Xml.Linq
Imports System.Net
Partial Class AmberAlert
Inherits System.Web.UI.Page
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
Dim amberAlert As XDocument = XDocument.Load("http://www.missingkids.com/missingkids/servlet/XmlServlet?act=rss&LanguageCountry=en_US&orgPrefix=NCMC&state=NY")
For Each xe As XElement In amberAlert.Descendants("item")
lblDescription.Text += (xe.Element("description").Value) + "<br />"
imgAmberIMG.ImageUrl = xe.Element("enclosure").Attribute("url").Value
Next
End Sub
End Class
我在树上的正确元素;我可以显示第一张图片,并且我已经能够访问所有“描述”元素。但我需要将每个'item'元素一起显示。
谢谢!
答案 0 :(得分:0)
使用asp:DataList将您的图像和描述放在其中并使用数据绑定来设置它们的属性。请参阅MSDN上的DataList Class,其中包含一个示例。
而不是使用For Each:
Dim missingList = From xe As XElement In amberAlert.Descendants("item")
Select New With {
Description = (xe.Element("description").Value) + "<br />",
ImageUrl = xe.Element("enclosure").Attribute("url").Value
}
然后将DataList的DataSource设置为missingList。