LINQ和XML - 解析并显示图像
问题描述:
我想解析并显示每个'item'
在XML文件中的图片和描述。我无法找出图像的一部分,我只能够以连接'description'
显示它:LINQ和XML - 解析并显示图像
.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'元素一起显示。
谢谢!
答
使用一个asp:DataList把你的图像和描述放在里面,并使用数据绑定来设置它们的属性。请参阅包含示例的MSDN上的DataList Class。
代替使用为每个:
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到missingList的DataSource。
看看http://*.com/questions/21877/dynamically-rendering-aspimage-from-blob-entry-in-asp-net – volody 2012-03-30 18:30:19
你知道,你刚刚回答了我有关Oracle BLOB的另一个问题上个月!但是,我需要考虑如何解析XML文件... – tahdhaze09 2012-03-30 18:36:52