XsltMessageEncounteredEventArgs.Message Propiedad
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene el contenido del elemento xsl:message
.
public:
abstract property System::String ^ Message { System::String ^ get(); };
public abstract string Message { get; }
member this.Message : string
Public MustOverride ReadOnly Property Message As String
Contenido del elemento xsl:message
.
En el ejemplo siguiente se usa para XsltMessageEncounteredEventArgs mostrar xsl:message
contenido en la consola. En el ejemplo se escribe el siguiente mensaje en la consola: Message received: Author name is not in the correct format <author><name>Plato</name></author>
.
using System;
using System.IO;
using System.Xml;
using System.Xml.Xsl;
using System.Xml.XPath;
public class Sample {
public static void Main() {
// Create the XslCompiledTransform object and load the style sheet.
XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load("message.xsl");
XsltArgumentList argList = new XsltArgumentList();
argList.XsltMessageEncountered += new XsltMessageEncounteredEventHandler(MessageCallBack);
// Load the file to transform.
XPathDocument doc = new XPathDocument("books.xml");
// Transform the file.
xslt.Transform(doc, argList, XmlWriter.Create("output.xml"));
}
private static void MessageCallBack(object sender, XsltMessageEncounteredEventArgs e) {
Console.WriteLine("Message received: {0}", e.Message);
}
}
Imports System.IO
Imports System.Xml
Imports System.Xml.Xsl
Imports System.Xml.XPath
Public Class Sample
Public Shared Sub Main()
' Create the XslCompiledTransform object and load the style sheet.
Dim xslt As New XslCompiledTransform()
xslt.Load("message.xsl")
Dim argList As New XsltArgumentList()
AddHandler argList.XsltMessageEncountered, AddressOf MessageCallBack
' Load the file to transform.
Dim doc As New XPathDocument("books.xml")
' Transform the file.
xslt.Transform(doc, argList, XmlWriter.Create("output.xml"))
End Sub
Private Shared Sub MessageCallBack(ByVal sender As Object, ByVal e As XsltMessageEncounteredEventArgs)
Console.WriteLine("Message received: {0}", e.Message)
End Sub
End Class
En el ejemplo se usan los siguientes archivos como entrada:
books.xml
<bookstore>
<book genre="autobiography" publicationdate="1981" ISBN="1-861003-11-0">
<title>The Autobiography of Benjamin Franklin</title>
<author>
<first-name>Benjamin</first-name>
<last-name>Franklin</last-name>
</author>
<price>8.99</price>
</book>
<book genre="novel" publicationdate="1967" ISBN="0-201-63361-2">
<title>The Confidence Man</title>
<author>
<first-name>Herman</first-name>
<last-name>Melville</last-name>
</author>
<price>11.99</price>
</book>
<book genre="philosophy" publicationdate="1991" ISBN="1-861001-57-6">
<title>The Gorgias</title>
<author>
<name>Plato</name>
</author>
<price>9.99</price>
</book>
</bookstore>
message.xsl
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" omit-xml-declaration="yes"/>
<xsl:template match="/">
<xsl:apply-templates select="*"/>
<xsl:copy-of select="."/>
</xsl:template>
<xsl:template match="*">
<xsl:apply-templates select="//author"/>
</xsl:template>
<xsl:template match="author">
<xsl:if test="not (last-name)">
<xsl:message terminate="no">Author name is not in the correct format <xsl:copy-of select="."/>
</xsl:message>
</xsl:if>
</xsl:template>
</xsl:stylesheet>