XPathBinder XPathBinder XPathBinder XPathBinder Class

Definición

Proporciona compatibilidad con diseñadores de programación rápida de aplicaciones (RAD) para analizar expresiones de enlace de datos que utilizan expresiones XPath.Provides support for rapid application development (RAD) designers to parse data-binding expressions that use XPath expressions. Esta clase no puede heredarse.This class cannot be inherited.

public ref class XPathBinder sealed
public sealed class XPathBinder
type XPathBinder = class
Public NotInheritable Class XPathBinder
Herencia
XPathBinderXPathBinderXPathBinderXPathBinder

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar un XmlDataSource control con una plantilla Repeater control para mostrar datos XML.The following code example demonstrates how to use an XmlDataSource control with a templated Repeater control to display XML data. En este ejemplo tiene dos partes:This example has two parts:

  • Una página de formularios Web Forms que muestra los datos XML.A Web Forms page that displays XML data.

  • Un archivo XML que contiene los datos.An XML file that contains the data.

La primera parte del ejemplo muestra una página de formularios Web Forms que muestra los datos XML que tiene acceso mediante un XmlDataSource control.The first part of the example shows a Web Forms page that displays XML data accessed through an XmlDataSource control. Un Repeater controlar usa simplificado Eval(Object, String) sintaxis de método para enlazar a elementos de datos dentro del XML de documentos que el XmlDataSource representa.A Repeater control uses simplified Eval(Object, String) method syntax to bind to data items within the XML document that the XmlDataSource represents. Usa el Select(Object, String) método para recuperar un IEnumerable lista y se asigna como un tiempo de ejecución DataSource propiedad para el Repeater control.It uses the Select(Object, String) method to retrieve an IEnumerable list and assign it as a late-bound DataSource property for the Repeater control.

<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>Order</title>
</head>
<body>
    <form id="form1" runat="server">
      <asp:XmlDataSource
        runat="server"
        id="XmlDataSource1"
        XPath="orders/order"
        DataFile="order.xml" />

      <asp:Repeater ID="Repeater1"
        runat="server"
        DataSourceID="XmlDataSource1">
        <ItemTemplate>
            <h2>Order</h2>
            <table>
              <tr>
                <td>Customer</td>
                <td><%#XPath("customer/@id")%></td>
                <td><%#XPath("customername/firstn")%></td>
                <td><%#XPath("customername/lastn")%></td>
              </tr>
              <tr>
                <td>Ship To</td>
                <td><%#XPath("shipaddress/address1")%></font></td>
                <td><%#XPath("shipaddress/city")%></td>
                <td><%#XPath("shipaddress/state")%>,
                    <%#XPath("shipaddress/zip")%></td>
              </tr>
            </table>
            <h3>Order Summary</h3>
            <asp:Repeater ID="Repeater2"
                 DataSource='<%#XPathSelect("summary/item")%>'
                 runat="server">
                <ItemTemplate>
                     <b><%#XPath("@dept")%></b> -
                         <%#XPath(".")%><br />
                </ItemTemplate>
            </asp:Repeater>
            <hr />
        </ItemTemplate>
    </asp:Repeater>

  </form>
  </body>
</html>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>Order</title>
</head>
<body> 
    <form id="form1" runat="server">
      <asp:XmlDataSource
        runat="server"
        id="XmlDataSource1"
        XPath="orders/order"
        DataFile="order.xml" />

      <asp:Repeater ID="Repeater1"
        runat="server"
        DataSourceID="XmlDataSource1">
        <ItemTemplate>
            <h2>Order</h2>
            <table>
              <tr>
                <td>Customer</td>
                <td><%#XPath("customer/@id")%></td>
                <td><%#XPath("customername/firstn")%></td>
                <td><%#XPath("customername/lastn")%></td>
              </tr>
              <tr>
                <td>Ship To</td>
                <td><%#XPath("shipaddress/address1")%></font></td>
                <td><%#XPath("shipaddress/city")%></td>
                <td><%#XPath("shipaddress/state")%>,
                    <%#XPath("shipaddress/zip")%></td>
              </tr>
            </table>
            <h3>Order Summary</h3>
            <asp:Repeater ID="Repeater2"
                 DataSource='<%#XPathSelect("summary/item")%>'
                 runat="server">
                <ItemTemplate>
                     <b><%#XPath("@dept")%></b> -
                         <%#XPath(".")%><br />
                </ItemTemplate>
            </asp:Repeater>
            <hr />
        </ItemTemplate>
    </asp:Repeater>

  </form>
  </body>
</html>

El segundo ejemplo proporciona el archivo XML, Order.xml, que se usa como el origen de los datos mostrados en la página de formularios Web Forms definida anteriormente.The second example provides the XML file, Order.xml, that is used as the source of the data displayed in the Web Forms page defined above.

<?xml version="1.0" encoding="iso-8859-1"?>  
  <orders>  
    <order>  
      <customer id="12345" />  
      <customername>  
        <firstn>John</firstn>  
        <lastn>Doe</lastn>  
      </customername>  
      <transaction id="12345" />  
      <shipaddress>  
        <address1>1234 Tenth Avenue</address1>  
        <city>Bellevue</city>  
        <state>Washington</state>  
        <zip>98001</zip>  
      </shipaddress>  
      <summary>  
        <item dept="tools">screwdriver</item>  
        <item dept="tools">hammer</item>  
        <item dept="plumbing">fixture</item>  
      </summary>  
    </order>  
 </orders>  

Comentarios

Puede usar sobrecargado Eval método de esta clase para enlazar con el resultado de una expresión XPath que se ejecuta en un objeto que implementa el IXPathNavigable interfaz, como un XmlNode.You can use the overloaded Eval method of this class to bind to the result of an XPath expression executed against an object that implements the IXPathNavigable interface, such as an XmlNode. Puede usar el Select método para recuperar los resultados de una expresión XPath que se ejecuta en un IXPathNavigable objeto como un IEnumerable lista de nodos.You can use the Select method to retrieve the results of an XPath expression executed against an IXPathNavigable object as an IEnumerable list of nodes. Esta lista de nodos se puede enumerar directamente o asignada a la DataSource propiedad de una lista de control, como un Repeater o DataList.This list of nodes can be enumerated directly or assigned to the DataSource property of a list control, such as a Repeater or DataList.

Puede usar una versión simplificada de la sintaxis de enlace de datos al usar el XPathBinder métodos mediante declaración.You can use a simplified version of data-binding syntax when using the XPathBinder methods declaratively. En lugar de llamar XPathBinder.Eval(Container.DataItem, xpath) puede usar XPath(xpath).Instead of calling XPathBinder.Eval(Container.DataItem, xpath) you can use XPath(xpath). De forma similar, en lugar de llamar XPathBinder.Select(Container.DataItem,xpath), puede usar XPathSelect(xpath) para recuperar un IEnumerable conjunto de nodos.Similarly, instead of calling XPathBinder.Select(Container.DataItem,xpath), you can use XPathSelect(xpath) to retrieve an IEnumerable set of nodes. Cuando el uso de esto simplifica la sintaxis, la Eval y Select métodos suponen un valor predeterminado Container.DataItem objeto de contexto.When using this simplified syntax, the Eval and Select methods assume a default Container.DataItem context object.

Para obtener más información sobre el enlace de datos a controles de servidor ASP.NET, vea sintaxis de expresiones de enlace de datos.For more information about data binding to ASP.NET server controls, see Data-Binding Expression Syntax.

Métodos

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina si el objeto especificado es igual al objeto actual.Determines whether the specified object is equal to the current object.

(Inherited from Object)
Eval(Object, String) Eval(Object, String) Eval(Object, String) Eval(Object, String)

Evalúa las expresiones de enlace de datos XPath en tiempo de ejecución.Evaluates XPath data-binding expressions at run time.

Eval(Object, String, IXmlNamespaceResolver) Eval(Object, String, IXmlNamespaceResolver) Eval(Object, String, IXmlNamespaceResolver) Eval(Object, String, IXmlNamespaceResolver)

Evalúa las expresiones de enlace de datos XPath en tiempo de ejecución y da al resultado el formato del texto que se va a mostrar en el explorador que realiza la solicitud, utilizando el objeto IXmlNamespaceResolver especificado para resolver los prefijos de espacio de nombres en la expresión XPath.Evaluates XPath data-binding expressions at run time and formats the result as text to be displayed in the requesting browser, using the IXmlNamespaceResolver object specified to resolve namespace prefixes in the XPath expression.

Eval(Object, String, String) Eval(Object, String, String) Eval(Object, String, String) Eval(Object, String, String)

Evalúa las expresiones de enlace de datos XPath en tiempo de ejecución y da al resultado el formato del texto que se va a mostrar en el explorador que realiza la solicitud.Evaluates XPath data-binding expressions at run time and formats the result as text to be displayed in the requesting browser.

Eval(Object, String, String, IXmlNamespaceResolver) Eval(Object, String, String, IXmlNamespaceResolver) Eval(Object, String, String, IXmlNamespaceResolver) Eval(Object, String, String, IXmlNamespaceResolver)

Evalúa las expresiones de enlace de datos XPath en tiempo de ejecución y da al resultado el formato del texto que se va a mostrar en el explorador que realiza la solicitud, utilizando el objeto IXmlNamespaceResolver especificado para resolver los prefijos de espacio de nombres en la expresión XPath.Evaluates XPath data-binding expressions at run time and formats the result as text to be displayed in the requesting browser, using the IXmlNamespaceResolver object specified to resolve namespace prefixes in the XPath expression.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

(Inherited from Object)
Select(Object, String) Select(Object, String) Select(Object, String) Select(Object, String)

Utiliza una expresión de enlace de datos XPath en tiempo de ejecución para devolver una lista de nodos.Uses an XPath data-binding expression at run time to return a list of nodes.

Select(Object, String, IXmlNamespaceResolver) Select(Object, String, IXmlNamespaceResolver) Select(Object, String, IXmlNamespaceResolver) Select(Object, String, IXmlNamespaceResolver)

Utiliza una expresión de enlace de datos XPath en tiempo de ejecución para devolver una lista de nodos, utilizando el objeto IXmlNamespaceResolver especificado para resolver los prefijos de espacio de nombres en la expresión XPath.Uses an XPath data-binding expression at run time to return a list of nodes, using the IXmlNamespaceResolver object specified to resolve namespace prefixes in the XPath expression.

ToString() ToString() ToString() ToString()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Inherited from Object)

Se aplica a