ayuda para polpular un dropdowntable desde un xml

Iniciado por andygrl, 8 Marzo 2010, 21:15 PM

0 Miembros y 2 Visitantes están viendo este tema.

andygrl

Hola, soy nueva aca y mi primer mensaje ya lo publique en el foro equivocado :(
De todas maneras estoy empezando a estudiar y estoy tratando de hacer lo siguiente.

tengo un xml,
quiero hacer un dropdowntable que me de los titulos del xml
cuando elija el titulo quiero que me salga la descripcion del mensaje.
y tambien quiero que se guarde en el cache, la primera vez que llame al xml

alguien me puede ayudar por favor?  :D

[D4N93R]

Hola, Bienvenida,

Por Dropdown table te refieres a un DropDownList? :D

Y por ende supongo que estas trabajando en Asp.net?

Bueno,
  Uhmm creo que lo que deberias hacer es usar un XmlReader para leer el Xml y a medida que lo lees vas insertando la data en los DropDownList.

  Lo del caché, por qué lo quieres mantener? más o menos cual es el Scope que quieres? por usuario puedes usar ViewState, que va bastante bien..

Por cuestiones de tiempo busqué un ejemplo, en vez de crear uno yo :P acá te va el link:

http://support.microsoft.com/kb/307548

  Espero que esto sea lo que necesites.

Un saludo

andygrl

primero que nada, gracias por la respuesta
mas que trabajando, estoy estudiando :)
y tengo leido tantos articulos que hasta ando sonando con codigos de programacion :)
lo que quiero es que el dropdown list solo de el titulo y una vez elegido muestre la descripcion del articulo, vos a leer lo que has mandado.
con respecto al cache, es para no cargar la pagina todo el tiempo, solo las noticias nuevas, estoy usando un rss de google para practicar.
por lo pronto logre llamar al rss pero en una pagina comun y ni hablar de subirlo a cache  :rolleyes:
este es el codigo que tengo hasta ahora

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<div>

<asp:DropDownList ID="DropDownList1" runat="server"
DataSourceID="XmlDataSource1" Width="300px">
</asp:DropDownList>

</div>
<div>
<asp:DataList ID="DataList1" Runat="server" DataSourceID="XmlDataSource1"
CellPadding="4" ForeColor="#333333" Width="600px">
<ItemTemplate>
<asp:Label ID="Label1" Runat="server" Text='<%# XPath("pubDate") %>' ForeColor="gray" Font-Bold="True"
Font-Names="Verdana" Font-Size="XX-Small"></asp:Label><br />
<asp:HyperLink ID="HyperLink1" Runat="server" Text='<%# XPath("title") %>' NavigateUrl='<%# XPath("link") %>'
Target="_blank" Font-Names="Verdana" Font-Size="X-Small"></asp:HyperLink><br />
<%# XPath("description") %>
</ItemTemplate>
<AlternatingItemTemplate>
<asp:Label ID="Label3" Runat="server" Text='<%# XPath("pubDate") %>'
ForeColor="gray" Font-Bold="True"
Font-Names="Verdana" Font-Size="XX-Small"></asp:Label><br />
<asp:HyperLink ID="HyperLink2" Runat="server"
Text='<%# XPath("title") %>' NavigateUrl='<%# XPath("link") %>'
Target="_blank" Font-Names="Verdana" Font-Size="X-Small"></asp:HyperLink><br />
<%# XPath("description") %>
</AlternatingItemTemplate>
<AlternatingItemStyle BackColor="White"></AlternatingItemStyle>
<ItemStyle Font-Names="Verdana" Font-Size="X-Small" BackColor="#EFF3FB"></ItemStyle>
<FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
<SelectedItemStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
<HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
</asp:DataList>
&nbsp;</div>
<asp:XmlDataSource ID="XmlDataSource1" runat="server" DataFile="http://news.google.com/news?ned=us&topic=w&output=rss" XPath="rss/channel/item">
</asp:XmlDataSource>
&nbsp; &nbsp;
</form>
</body>
</html>

[D4N93R]

Como es un RSS, y de la forma en como lo estas haciendo, siempre vas a cargar todo, Si quieres mostrar solo las noticias nuevas, vas a tener que usar AJAX y codificar el comportamiento de la lectura del RSS :)

saludos! Dime si te fue de ayuda, sino te seguimos ayudando!

andygrl

gracias por la respuesta, si se que tengo que usar ajax, que todavía no se hacerlo jejeje. estoy mirando LINQ, http://weblogs.asp.net/scottgu/archive/2007/08/07/using-linq-to-xml-and-how-to-build-a-custom-rss-feed-reader-with-it.aspx (no se si se puede poner un link, sino lo siento) pero cuando trato de hacer el codigo que yo necesito, sera mi ignorancia pero me da mas errores que no se que...  :o

[D4N93R]

Por qué no mejor lo pruebas sin Ajax.. En .Net agregarle Ajax es simplemente un control y una linea de código, así que mejor, codifica la aplicación y luego paso por paso vamos mejorandola.