Compartilhar via


XsltMessageEncounteredEventArgs Classe

Definição

Fornece dados para o evento de XsltMessageEncountered .

public ref class XsltMessageEncounteredEventArgs abstract : EventArgs
public abstract class XsltMessageEncounteredEventArgs : EventArgs
type XsltMessageEncounteredEventArgs = class
    inherit EventArgs
Public MustInherit Class XsltMessageEncounteredEventArgs
Inherits EventArgs
Herança
XsltMessageEncounteredEventArgs

Exemplos

O exemplo a seguir usa o XsltMessageEncounteredEventArgs para exibir xsl:message conteúdo no console. O exemplo grava a seguinte mensagem no console: 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

O exemplo usa os seguintes arquivos 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>

Comentários

O XsltMessageEncountered evento ocorre durante o processamento XSLT quando um xsl:message é especificado na folha de estilos.

Observação

Se o terminate atributo estiver definido como "yes", o processador XSLT interromperá a execução da folha de estilos após o processamento da mensagem.

Construtores

XsltMessageEncounteredEventArgs()

Inicializa uma nova instância da classe XsltMessageEncounteredEventArgs.

Propriedades

Message

Obtém o conteúdo do xsl:message elemento .

Métodos

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Aplica-se a

Confira também