1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
// Einlesen der XML Datei
XmlTextReader XTR = new XmlTextReader(Request.PhysicalApplicationPath + "News.xml");
XmlDocument XD = new XmlDocument();
XD.Load(XTR);
// Einlesen der XSL Datei
XslCompiledTransform XLS = new XslCompiledTransform();
XLS.Load(Request.PhysicalApplicationPath + "News.xsl");
// XMl Transformation im Speicher durchführen
MemoryStream MS = new MemoryStream();
XLS.Transform(XD, null, MS);
// Ausgeben der formatierten XML Datei
MS.Position = 1;
StreamReader sr = new StreamReader(MS);
Response.Write(sr.ReadToEnd());
XTR.Close();
//Inhalt der News.xml
<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="Cust.xsl"?>
<DataSet1>
<News>
<Titel>Nachricht 1</Titel>
<Datum>01.01.2006</Datum>
<Inhalt>Inhalt der Nachricht 1</Inhalt>
</News>
<News>
<Titel>Nachricht 2</Titel>
<Datum>02.01.2006</Datum>
<Inhalt>Inhalt der Nachricht 2</Inhalt>
</News>
</DataSet1>
// Inhalt der News.xsl
<?xml version="1.0" encoding="UTF-8"?>
<html xsl:version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<body>
<xsl:for-each select="/DataSet1/News">
<p>
<br>
<b>
<xsl:value-of select="Titel"/>
</b>
</br>
<br>
<xsl:value-of select="Datum"/>
</br>
<br>
<xsl:value-of select="Inhalt"/>
</br>
</p>
</xsl:for-each>
</body>
</html>
|