XPathBinder Klasa

Definicja

Zapewnia obsługę projektantów z szybkim programowaniem aplikacji (RAD) do analizy wyrażeń powiązań danych, które używają wyrażeń XPath.Provides support for rapid application development (RAD) designers to parse data-binding expressions that use XPath expressions. Klasa ta nie może być dziedziczona.This class cannot be inherited.

public ref class XPathBinder sealed
public sealed class XPathBinder
type XPathBinder = class
Public NotInheritable Class XPathBinder
Dziedziczenie
XPathBinder

Przykłady

Poniższy przykład kodu ilustruje sposób używania XmlDataSource kontrolki z formantem z szablonem Repeater do wyświetlania danych XML.The following code example demonstrates how to use an XmlDataSource control with a templated Repeater control to display XML data. Ten przykład ma dwie części:This example has two parts:

  • Strona formularzy sieci Web, która wyświetla dane XML.A Web Forms page that displays XML data.

  • Plik XML, który zawiera dane.An XML file that contains the data.

Pierwsza część tego przykładu przedstawia stronę formularzy sieci Web, która wyświetla dane XML, do których można uzyskać dostęp za pomocą XmlDataSource kontrolki.The first part of the example shows a Web Forms page that displays XML data accessed through an XmlDataSource control. RepeaterKontrolka używa uproszczonej Eval(Object, String) składni metody do powiązania elementów danych w dokumencie XML, które XmlDataSource reprezentuje.A Repeater control uses simplified Eval(Object, String) method syntax to bind to data items within the XML document that the XmlDataSource represents. Używa Select(Object, String) metody do pobierania IEnumerable listy i przypisywania jej jako właściwości z późnym wiązaniem DataSource dla Repeater kontrolki.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>

Drugi przykład zawiera plik XML, Order.xml, który jest używany jako źródło danych wyświetlanych na stronie formularzy sieci Web zdefiniowanej powyżej.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>  

Uwagi

Można użyć przeciążonej Eval metody tej klasy, aby powiązać wynik wyrażenia XPath wykonywanego względem obiektu, który implementuje IXPathNavigable interfejs, taki jak 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. Możesz użyć metody, Select Aby pobrać wyniki wyrażenia XPath wykonanego względem IXPathNavigable obiektu jako IEnumerable listę węzłów.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. Tę listę węzłów można wyliczyć bezpośrednio lub przypisać do DataSource właściwości kontrolki listy, takiej jak Repeater lub 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.

Można użyć uproszczonej wersji składni powiązania danych, korzystając z XPathBinder metod deklaratywnie.You can use a simplified version of data-binding syntax when using the XPathBinder methods declaratively. Zamiast wywoływania XPathBinder.Eval ( Container.DataItem , xpath ) można użyć XPath ( xpath ).Instead of calling XPathBinder.Eval(Container.DataItem, xpath) you can use XPath(xpath). Podobnie zamiast wywoływania XPathBinder.Select ( Container.DataItem , xpath ) można użyć XPathSelect ( xpath ), aby pobrać IEnumerable zestaw węzłów.Similarly, instead of calling XPathBinder.Select(Container.DataItem,xpath), you can use XPathSelect(xpath) to retrieve an IEnumerable set of nodes. W przypadku korzystania z tej uproszczonej Eval składni Select metody i zakładają domyślny Container.DataItem obiekt kontekstu.When using this simplified syntax, the Eval and Select methods assume a default Container.DataItem context object.

Aby uzyskać więcej informacji na temat powiązania danych z kontrolkami serwera ASP.NET, zobacz składnia wyrażeń powiązania danych.For more information about data binding to ASP.NET server controls, see Data-Binding Expression Syntax.

Metody

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.Determines whether the specified object is equal to the current object.

(Odziedziczone po Object)
Eval(Object, String)

Oblicza wyrażenia powiązań danych XPath w czasie wykonywania.Evaluates XPath data-binding expressions at run time.

Eval(Object, String, IXmlNamespaceResolver)

Oblicza wyrażenia powiązań danych XPath w czasie wykonywania i formatuje wynik jako tekst, który ma być wyświetlany w przeglądarce żądającej, przy użyciu IXmlNamespaceResolver obiektu określonego do rozpoznawania prefiksów przestrzeni nazw w wyrażeniu 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)

Oblicza wyrażenia powiązań danych XPath w czasie wykonywania i formatuje wynik jako tekst, który będzie wyświetlany w przeglądarce żądającej.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)

Oblicza wyrażenia powiązań danych XPath w czasie wykonywania i formatuje wynik jako tekst, który ma być wyświetlany w przeglądarce żądającej, przy użyciu IXmlNamespaceResolver obiektu określonego do rozpoznawania prefiksów przestrzeni nazw w wyrażeniu 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()

Służy jako domyślna funkcja skrótu.Serves as the default hash function.

(Odziedziczone po Object)
GetType()

Pobiera Type bieżące wystąpienie.Gets the Type of the current instance.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy skróconą kopię bieżącego elementu Object .Creates a shallow copy of the current Object.

(Odziedziczone po Object)
Select(Object, String)

Używa wyrażenia powiązania danych XPath w czasie wykonywania w celu zwrócenia listy węzłów.Uses an XPath data-binding expression at run time to return a list of nodes.

Select(Object, String, IXmlNamespaceResolver)

Używa wyrażenia powiązania danych XPath w czasie wykonywania, aby zwrócić listę węzłów przy użyciu IXmlNamespaceResolver obiektu określonego do rozpoznawania prefiksów przestrzeni nazw w wyrażeniu 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()

Zwraca ciąg reprezentujący bieżący obiekt.Returns a string that represents the current object.

(Odziedziczone po Object)

Dotyczy