Just nu i M3-nätverket
Gå till innehåll

Integrera RSS-flöde med ASP.NET VB


dkz

Rekommendera Poster

Jag behöver integrera en rss feed på en asp.net sida. Jag har gjort detta tidigare med asp men samma kod fungerar tyvärr inte.

 

Någon som vet hur jag på smidigaste sätt kan hämta och visa rss flödet på min sida?

 

Länk till kommentar
Dela på andra webbplatser

Den här använda jag senast. Modifiera den efter dina behov.

 

               WebRequest _WR = WebRequest.Create("RSS-sida");
               WebResponse _WRP = _WR.GetResponse();
               Stream _RS = _WRP.GetResponseStream();

               XmlDocument _XD = new XmlDocument();
               _XD.Load(_RS);
               XmlNodeList _RI = _XD.SelectNodes("rss/channel/item");

               string _Title = "";
               string _Link = "";
               string _Date = "";
               string _Body = "";

               for (int i = 0; i < _RI.Count; i++)
               {
                   XmlNode _RD = _RI.Item(i).SelectSingleNode("title");

                   _RD = _RI.Item(i).SelectSingleNode("title");
                   if (_RD != null)
                   {
                       if (_RD.InnerText.Length > 38)
                           _Link = "<a class='Link' href='NewsDetail.aspx?NewsID=" + i.ToString() + "'>" + Utilities.Left(_RD.InnerText, 38) + "</a>";
                       else
                           _Link = "<a class='Link' href='NewsDetail.aspx?NewsID=" + i.ToString() + "'>" + _RD.InnerText + "</a>";
                       _Date = Convert.ToDateTime(_RI.Item(i).SelectSingleNode("pubDate").InnerText).ToString("dd-MM-yyyy HH:mm");
                   }

                   Label1.Text += "<div class='News'>" + _Link + "</div><div>" + _Date + "</div>";
               }

 

Länk till kommentar
Dela på andra webbplatser

Är lite rostig på VB, men testa denna:

 

Dim _WR As WebRequest = WebRequest.Create("RSS-sida")
Dim _WRP As WebResponse = _WR.GetResponse()
Dim _RS As Stream = _WRP.GetResponseStream()

Dim _XD As New XmlDocument()
_XD.Load(_RS)
Dim _RI As XmlNodeList = _XD.SelectNodes("rss/channel/item")

Dim _Title As String = ""
Dim _Link As String = ""
Dim _Date As String = ""
Dim _Body As String = ""
For i As Integer = 0 To _RI.Count - 1

Dim _RD As XmlNode = _RI.Item(i).SelectSingleNode("title")

_RD = _RI.Item(i).SelectSingleNode("title")
If _RD IsNot Nothing Then
	If _RD.InnerText.Length > 38 Then
		_Link = "<a class='Link' href='NewsDetail.aspx?NewsID=" + i.ToString() + "'>" + Utilities.Left(_RD.InnerText, 38) + "</a>"
	Else
		_Link = "<a class='Link' href='NewsDetail.aspx?NewsID=" + i.ToString() + "'>" + _RD.InnerText + "</a>"

	End If
End If

Label1.Text += "<div class='News'>" + _Link + "</div><div>" + _Date + "</div>"
Next

 

Länk till kommentar
Dela på andra webbplatser

Hej Hasse!

Jag är väldigt tacksam för ditt rostiga försök, men tyvärr får jag inte koden till att fungera. Har försökt lite olika ändringar men lyckas inte att köra den. Jag får följande felmeddelande

 

[log]

Compilation Error

Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

 

Compiler Error Message: BC30002: Type 'WebRequest' is not defined.

 

Source Error:

 

Line 1: <script language="vb" runat="server">

Line 2: Dim _WR As WebRequest = WebRequest.Create("http://www.xbox-scene.com/xbox1data/xbox-scene.xml")

Line 3: Dim _WRP As WebResponse = _WR.GetResponse()

Line 4: Dim _RS As Stream = _WRP.GetResponseStream()

[/log]

 

Länk till kommentar
Dela på andra webbplatser

Har du importerat System.Net då? Längst upp på sidan måste du tala om vilka namespaces du tänker använda dig av, annars måste du ange dessa explicit i koden när du använder klasser. (WebRequest ligger i just namespace System.Net)

 

Således skall du lägga till

Imports System.Net

 

Om du inte lägger till denna rad längst upp måste du ändra alla referenser i koden till klassen WebRequest till System.Net.WebRequest.

 

Länk till kommentar
Dela på andra webbplatser

  • 2 veckor senare...

Tack för ert tålamod! :)

 

Jag testar nu med följande kod men endå så får jag felmeddelanden, förmodlingen så är det fler namespace som ska importeras?!?

 

<%@ Page Language="VB" %>
<%@ Import Namespace="System.Net" %>
<%@ Import Namespace="System.Net.WebRequest" %>

<script language="VB" runat="server">
Dim _WR As WebRequest = WebRequest.Create("http://www.xbox-scene.com/xbox1data/xbox-scene.xml")
Dim _WRP As WebResponse = _WR.GetResponse()
Dim _RS As Stream = _WRP.GetResponseStream()

Dim _XD As New XmlDocument()
_XD.Load(_RS)
Dim _RI As XmlNodeList = _XD.SelectNodes("rss/channel/item")

Dim _Title As String = ""
Dim _Link As String = ""
Dim _Date As String = ""
Dim _Body As String = ""
For i As Integer = 0 To _RI.Count - 1

Dim _RD As XmlNode = _RI.Item(i).SelectSingleNode("title")

_RD = _RI.Item(i).SelectSingleNode("title")
If _RD IsNot Nothing Then
If _RD.InnerText.Length > 38 Then
_Link = "<a class='Link' href='NewsDetail.aspx?NewsID=" + i.ToString() + "'>" + Utilities.Left(_RD.InnerText, 38) + "</a>"
Else
_Link = "<a class='Link' href='NewsDetail.aspx?NewsID=" + i.ToString() + "'>" + _RD.InnerText + "</a>"

End If
End If

Label1.Text += "<div class='News'>" + _Link + "</div><div>" + _Date + "</div>"
Next
</script>

 

[log] Compilation Error

Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

 

Compiler Error Message: BC30002: Type 'Stream' is not defined.

 

Source Error:

Line 6: Dim _WR As WebRequest = WebRequest.Create("http://www.xbox-scene.com/xbox1data/xbox-scene.xml")

Line 7: Dim _WRP As WebResponse = _WR.GetResponse()

Line 8: Dim _RS As Stream = _WRP.GetResponseStream()

Line 9:

Line 10: Dim _XD As New XmlDocument()

 

Source File: d:\www\tadmin39\web283\x.nu\html\dev\rss3.aspx Line: 8 [/log]

 

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...