Syntaxe déclarative des contrôles serveur Web Xml
Mise à jour : novembre 2007
Affiche un document XML ou les résultats d'une transformation XSL.
<asp:Xml
DocumentSource="uri"
EnableTheming="True|False"
EnableViewState="True|False"
ID="string"
OnDataBinding="DataBinding event handler"
OnDisposed="Disposed event handler"
OnInit="Init event handler"
OnLoad="Load event handler"
OnPreRender="PreRender event handler"
OnUnload="Unload event handler"
runat="server"
SkinID="string"
TransformSource="string"
Visible="True|False"
/>
Notes
Utilisez le contrôle Xml pour afficher le contenu d'un document XML ou les résultats d'une transformation XSL.
Le document XML à afficher est spécifié en définissant l'une des trois propriétés. Ces trois propriétés représentent les différents types de documents XML qui peuvent être affichés. Vous pouvez afficher un XmlDocument, une chaîne XML ou un fichier XML en définissant la propriété appropriée. Le tableau suivant répertorie les propriétés permettant de spécifier le document XML.
Propriété |
Description |
||
---|---|---|---|
Définit le document XML à l'aide d'un objet XmlDocument. |
|||
Définit le document XML à l'aide d'une chaîne.
|
|||
Définit le document XML à l'aide d'un fichier. |
Remarque : |
---|
Au moins l'une des propriétés du document XML doit être définie, sans quoi aucun document XML n'est affiché. Si plus d'une propriété de document XML est définie, le document XML s'affiche conformément à la dernière propriété définie. Les documents des autres propriétés sont ignorés. |
Vous pouvez, le cas échéant, spécifier un document de transformation XSL qui mette en forme le document XML avant qu'il soit écrit dans le flux de sortie en définissant l'une des deux propriétés ci-dessous. Ces deux propriétés représentent les différents types de documents de transformation XSL qui peuvent être utilisés pour mettre en forme le document XML. Vous pouvez mettre en forme le document XML avec un XslTransform ou avec un fichier de transformation XSL en définissant la propriété appropriée. Si aucun document de transformation XSL n'est spécifié, le document XML est affiché à l'aide de la mise en forme par défaut. Le tableau suivant répertorie les propriétés permettant de spécifier un document de transformation XSL.
Propriété |
Description |
---|---|
Met en forme le document XML à l'aide du XslTransform spécifié. |
|
Met en forme le document XML à l'aide du fichier de transformation XSL (XSL Transformations) spécifié. |
Remarque : |
---|
Le document de transformation XSL est facultatif. Il n'est pas nécessaire que vous définissiez les propriétés Transform ou TransformSource. Si les deux propriétés sont définies, la dernière propriété définie détermine quel est le document de transformation XSL utilisé pour mettre en forme le document XML. L'autre propriété est ignorée. |
La classe Xml fournit également la propriété TransformArgumentList qui permet de spécifier des arguments facultatifs pour la transformation XSL. Les arguments peuvent être des paramètres XSLT ou des objets d'extension.
Exemple
Le code suivant montre un exemple de fichier XML.
<People>
<Person>
<Name>
<FirstName>Joe</FirstName>
<LastName>Suits</LastName>
</Name>
<Address>
<Street>1800 Success Way</Street>
<City>Redmond</City>
<State>WA</State>
<ZipCode>98052</ZipCode>
</Address>
<Job>
<Title>CEO</Title>
<Description>Wears the nice suit</Description>
</Job>
</Person>
<Person>
<Name>
<FirstName>Linda</FirstName>
<LastName>Sue</LastName>
</Name>
<Address>
<Street>1302 American St.</Street>
<City>Paso Robles</City>
<State>CA</State>
<ZipCode>93447</ZipCode>
</Address>
<Job>
<Title>Attorney</Title>
<Description>Stands up for justice</Description>
</Job>
</Person>
<Person>
<Name>
<FirstName>Jeremy</FirstName>
<LastName>Boards</LastName>
</Name>
<Address>
<Street>34 Palm Avenue</Street>
<City>Waikiki</City>
<State>HI</State>
<ZipCode>98052</ZipCode>
</Address>
<Job>
<Title>Pro Surfer</Title>
<Description>Rides the big waves</Description>
</Job>
</Person>
<Person>
<Name>
<FirstName>Joan</FirstName>
<LastName>Page</LastName>
</Name>
<Address>
<Street>700 Webmaster Road</Street>
<City>Redmond</City>
<State>WA</State>
<ZipCode>98073</ZipCode>
</Address>
<Job>
<Title>Web Site Developer</Title>
<Description>Writes the pretty pages</Description>
</Job>
</Person>
</People>
Le code suivant montre un exemple de fichier de transformation XSL (XSL Transformations).
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/People">
<xsl:apply-templates select="Person" />
</xsl:template>
<xsl:template match="Person">
<table width="100%" border="1">
<tr>
<td>
<b>
<xsl:value-of select="Name/FirstName" />
 
<xsl:value-of select="Name/LastName" />
</b>
</td>
</tr>
<tr>
<td>
<xsl:value-of select="Address/Street" /><br />
<xsl:value-of select="Address/City" />
,
<xsl:value-of select="Address/State" />
<xsl:value-of select="Address/Zip" />
</td>
</tr>
<tr>
<td>
Job Title: <xsl:value-of select="Job/Title" /><br />
Description: <xsl:value-of select="Job/Description" />
</td>
</tr>
</table>
</xsl:template>
<xsl:template match="bookstore">
<!-- Prices and books -->
<bookstore>
<xsl:apply-templates select="book"/>
</bookstore>
</xsl:template>
<xsl:template match="book">
<book>
<xsl:attribute name="ISBN">
<xsl:value-of select="@ISBN"/>
</xsl:attribute>
<price>
<xsl:value-of select="price"/>
</price>
<xsl:text>
</xsl:text>
</book>
</xsl:template>
</xsl:stylesheet>
L'exemple suivant montre comment utiliser le contrôle Xml pour afficher l'exemple de fichier XML à l'aide de l'exemple de fichier de transformation XSL. Vérifiez que l'exemple de fichier XML s'appelle People.xml et que l'exemple de fichier de transformation XSL s'appelle Peopletable.xsl.
<html>
<body>
<h3>Xml Example</h3>
<form runat="server">
<asp:Xml id="xml1"
DocumentSource="people.xml"
TransformSource="peopletable.xsl"
runat="server" />
</form>
</body>
</html>
L'exemple suivant montre comment créer des objets XmlDocument et XslTransform à partir des exemples de fichiers de transformation XSL et XML. Les objets sont ensuite utilisés par le contrôle Xml pour afficher le document XML. Vérifiez que l'exemple de fichier XML s'appelle People.xml et que l'exemple de fichier de transformation XSL s'appelle Peopletable.xsl.
<%@ Page Language="VB" AutoEventWireup="True" %>
<%@ Import Namespace="System.Xml" %>
<%@ Import Namespace="System.Xml.Xsl" %>
<html>
<script runat="server">
Sub Page_Load(sender As Object, e As EventArgs)
Dim doc As XmlDocument = New XmlDocument()
doc.Load(Server.MapPath("people.xml"))
Dim trans As XslTransform = new XslTransform()
trans.Load(Server.MapPath("peopletable.xsl"))
xml1.Document = doc
xml1.Transform = trans
End Sub
</script>
<body>
<h3>Xml Example</h3>
<form runat="server">
<asp:Xml id="xml1" runat="server" />
</form>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Xml" %>
<%@ Import Namespace="System.Xml.Xsl" %>
<html>
<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
XmlDocument doc = new XmlDocument();
doc.Load(Server.MapPath("people.xml"));
XslTransform trans = new XslTransform();
trans.Load(Server.MapPath("peopletable.xsl"));
xml1.Document = doc;
xml1.Transform = trans;
}
</script>
<body>
<h3>Xml Example</h3>
<form runat="server">
<asp:Xml id="xml1" runat="server" />
</form>
</body>
</html>