Das ist superbanal
Kerncode
Imports System.Data
Imports System.Data.SqlClient
Imports System.xml
Imports System.text
Imports System.io
Public Class bloggers
Inherits System.Web.UI.Page
#Region " Vom Web Form Designer generierter Code "
'Dieser Aufruf ist f�r den Web Form-Designer erforderlich.
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
End Sub
Protected WithEvents Repeater1 As System.Web.UI.WebControls.Repeater
Protected WithEvents rptBlogs As System.Web.UI.WebControls.Repeater
Protected WithEvents lblErrors As System.Web.UI.WebControls.Label
'HINWEIS: Die folgende Platzhalterdeklaration ist f�r den Web Form-Designer
erforderlich.
'Nicht l�schen oder verschieben.
Private designerPlaceholderDeclaration As System.Object
Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles MyBase.Init
'CODEGEN: Dieser Methodenaufruf ist f�r den Web Form-Designer erforderlich
'Verwenden Sie nicht den Code-Editor zur Bearbeitung.
InitializeComponent()
End Sub
#End Region
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles MyBase.Load
' Hier Benutzercode zur Seiteninitialisierung einf�gen
Dim DS As New DataSet
Dim con As SqlConnection
Dim cmd As SqlDataAdapter
Dim mainDS As New DataSet
con = New SqlConnection(ConfigurationSettings.AppSettings("DBCon"))
con.Open()
cmd = New SqlDataAdapter("select name,url,rss from konf_bloggers", con)
cmd.Fill(DS)
Dim i, z As Integer
z = DS.Tables(0).Rows.Count() - 1
For i = i To z
Dim tempDS As New DataSet
tempDS = GetRSS(DS.Tables(0).Rows(i).Item("rss").ToString)
'If Nothing(tempDS) Then
'Else
If IsNothing(mainDS) Then
mainDS.Tables.Add(tempDS.Tables("zehn"))
Else
mainDS.Merge(tempDS)
End If
Next i
Repeater1.DataSource = DS.Tables(0).DefaultView
Repeater1.DataBind()
'nach datum sortieren
Dim sortview As DataView
sortview = mainDS.Tables("zehn").DefaultView
sortview.Sort = "pubdate DESC"
rptBlogs.DataSource = sortview
rptBlogs.DataBind()
con.Close()
End Sub
Function GetRSS(ByVal RSS As String) As DataSet
dim ds1 as New DataSet
Try
Dim reader As XmlTextReader = New XmlTextReader("http://" + RSS)
Dim buffer As New StringBuilder
reader.Read()
reader.Read()
reader.MoveToElement()
buffer.Append(reader.ReadOuterXml)
buffer.Replace("h:c", "hc")
buffer.Replace("dc:creator", "author")
Dim str As String = buffer.ToString
ds1.ReadXml(New StringReader(buffer.ToString))
'ds1.ReadXml(reader)
reader.Close()
' XML Hirarchie
' b�se konvertierung
Dim i, z As Integer
Dim dt As New DataTable("zehn")
dt.Columns.Add("title", GetType(String), "")
dt.Columns.Add("description", GetType(String), "")
dt.Columns.Add("link", GetType(String), "")
dt.Columns.Add("author", GetType(String), "")
dt.Columns.Add("pubdate", GetType(Date), "")
Dim dr As DataRow
z = ds1.Tables("item").Rows.Count() - 1
If z > 3 Then z = 3
For i = 0 To z
dr = dt.NewRow
dr.Item("title") = ds1.Tables("item").Rows(i).Item("title")
dr.Item("description") = ds1.Tables("item").Rows(i).Item("description")
dr.Item("link") = ds1.Tables("item").Rows(i).Item("link")
dr.Item("author") = ds1.Tables("item").Rows(i).Item("author")
dr.Item("pubdate") = CType(ds1.Tables("item").Rows(i).Item("pubdate"),
Date)
dt.Rows.Add(dr)
Next
'ds1.Tables.Remove("item")
ds1.Tables.Add(dt)
Catch e As Exception
lblErrors.Text += RSS + e.Message + "<br>"
End Try
Return ds1
End Function
End Class
Hannes Preishuber
ceo ppedv ag
Interims-Chefredakteur ASP .NET professional (www.aspnet-professional.de)
----------------------------------
ppedv ag, Marktlerstr. 15b 84489 Burghausen
www.ppedv.de
Fon: +49-8677-9889-40 Fax-44
eMail: [EMAIL PROTECTED]
Mobil: +49-172-8337094
-----Urspr�ngliche Nachricht-----
Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im Auftrag von Christoph Wille
Gesendet: Donnerstag, 8. Juli 2004 15:33
An: [EMAIL PROTECTED]
Betreff: Re: [Coffeehouse] RE: Will wer ein Blog?
At 03:30 PM 7/8/2004, you wrote:
> > Und was anderes: findet sich wer bereit (von den existierenden
> > Bloggern oder sonstiger Maso) um einen Aggregator zu schreiben?
> > Funktionsumfang: ein simples Kommandozeilenutility wird jede Stunde
> > durch einen Scheduled Task angestossen, und l�uft alle Blogs durch,
> > schreibt allesamt gesammelt in ein RSS der 50 neuesten Eintr�ge.
> > Sozusagen lade
> > mehrere RSS, merge diese, schreibe die 50 neuesten in ein neues RSS.
> >
>
>Zeit habe ich im Moment leider wenig, aber vielleicht kann man darauf
>aufbauen:
>
>http://msdn.microsoft.com/library/en-us/dnaspp/html/aspnet-createrssw-a
>spnet
>.asp?frame=true
Hannes hat mir gerade was gezeigt:
http://www.asp-konferenz.de/bloggers.aspx
Chris
_______________________________________________
Coffeehouse Mailingliste, Postings senden an:
[EMAIL PROTECTED]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/coffeehouse
_______________________________________________
Coffeehouse Mailingliste, Postings senden an:
[EMAIL PROTECTED]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/coffeehouse