Dynamisches XML mit dem ASP.NET für RSS

Da dieses Script die Kommunikation mit einer Datenbank sowie mit einer XML-Datei erfordert, muss man gleich am Anfang drei Assemblies importieren: System.Xml, System.Data und System.Data.SqlClient. Als Nächstes wird ein String für die Datenbankverbindung erstellt und die Methode WriteStartDocument() verwendet um das XML-Dokument zu initialisieren. Man beachte die Verwendung der neuen Methode WriteAttributeString(), welche dem Wurzelelement <rss> das Attribut „version“ hinzufügt.

Nach Aufrufen der Methode WriteStartElement() zum Einfügen des Elements <channel> wird die Methode WriteElementString() zum Einfügen von RSS-Elementen verwendet, welche die Art des Feeds beschreiben. Als Nächstes werden eine normale SELECT-Abfrage für die Tabelle „articles“ ausgeführt und ein <item>-Element an den XML-Dokumentenbaum angehängt, eines für jeden Artikel (üblicherweise würde diese Abfrage weitere Einschränkungen enthalten um sicherzustellen, dass nur die neuesten Artikel aus der Datenbank abgerufen werden).

Innerhalb jedes <item>-Elements werden zusätzlich die Elemente <title>, <link>, <description>, <author>, <category> und <pubDate> eingefügt, deren Werte den entsprechenden Feldern der Tabelle „articles“ entnommen werden, wie bereits beschrieben.

Sobald alle Datensätze verarbeitet sind, wird der Ausgabestrom in eine Datei geschrieben um das Ergebnis wie in Listing C zu erzeugen.

Die ordentlich eingerückte Ausgabe rührt von der Eigenschaft „Formatting“ des XmlTextWriter()-Objekts her. Diese Eigenschaft ist eine Enumeration, welche einen von zwei Werten akzeptiert: „Indented“ oder „None“. Falls man ersteren Wert wählt, kann man zusätzlich eine Ganzzahl angeben, die festlegt, um wie viele Leerschritte jede Einrückung erfolgt.

Wie diese beiden Beispiele zeigen, ist dieses Objekt recht intuitiv zu verwenden und erweist sich vor allem dann als nützlich, wenn man XML aus einer externen Datenquelle erstellen will, sei es eine CSV-Datei, eine MS-SQL-Datenbank oder ein Datenstrom. Man sollte also ruhig einmal die vielfältigen Möglichkeiten dieses Objekts ausprobieren.

Page: 1 2 3 4

ZDNet.de Redaktion

Recent Posts

Adobe stopft kritische Löcher in Reader und Acrobat

Sie ermöglichen eine Remotecodeausführung. Angreifbar sind Acrobat DC, 2024 und 2020 sowie Reader DC und…

2 Wochen ago

Dezember-Patchday: Microsoft schließt Zero-Day-Lücke

Die öffentlich bekannte und bereits ausgenutzte Schwachstelle erlaubt eine Rechteausweitung. Betroffen sind alle unterstützten Versionen…

2 Wochen ago

Quantencomputer: Google meldet Durchbruch bei Fehlerkorrektur

Der neue Quantenchip Willow löst eine Herausforderung, an der seit 30 Jahren gearbeitet wird. Google…

2 Wochen ago

OpenAI veröffentlicht KI-Video-Tool Sora

Es erstellt kurze Videoclips aus Textaufforderungen. Sora steht ab sofort Abonnenten von ChatGPT Plus und…

2 Wochen ago

KI-Modell „Made in Germany“

Telekom bietet als erstes Unternehmen kommerzielles Angebot mit Teuken-7B von OpenGPT-X.

2 Wochen ago

Studie: Mitarbeiterverhalten verursacht IT-Sicherheitsrisiken

Zur Arbeitserleichterung umgehen Mitarbeiter unter anderem Cybersicherheitsrichtlinien. Dazu gehört wie Wiederverwendung von Kennwörtern für geschäftliche…

2 Wochen ago