LINQ и XML - анализ и отображение изображений - PullRequest
0 голосов
/ 30 марта 2012

Я хотел бы проанализировать и отобразить, а также изображение и описание для каждого 'item' в файле XML. Я не могу понять часть изображения, и мне удалось только объединить '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 отображался вместе.

Спасибо!

1 Ответ

0 голосов
/ 30 марта 2012

Используйте asp: DataList, поместите ваше изображение и описание в него и используйте привязку данных для установки их свойств. См. Класс списков данных на MSDN, который включает пример.

Вместо использования 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
                                  }

Затем установите DataSource для DataList на отсутствующий список.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...