XPathBinder XPathBinder XPathBinder XPathBinder Class

Definition

Stellt Unterstützung für RAD-Designer (Rapid Application Development) beim Analysieren von Datenbindungsausdrücken bereit, die XPath-Ausdrücke verwenden.Provides support for rapid application development (RAD) designers to parse data-binding expressions that use XPath expressions. Diese Klasse kann nicht vererbt werden.This class cannot be inherited.

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

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie ein XmlDataSource -Steuerelement mit einem Repeater auf Vorlagen basierenden Steuerelement verwendet wird, um XML-Daten anzuzeigen.The following code example demonstrates how to use an XmlDataSource control with a templated Repeater control to display XML data. Dieses Beispiel besteht aus zwei Teilen:This example has two parts:

  • Eine Web Forms Seite, auf der XML-Daten angezeigt werden.A Web Forms page that displays XML data.

  • Eine XML-Datei, die die Daten enthält.An XML file that contains the data.

Der erste Teil des Beispiels zeigt eine Web Forms Seite, die XML-Daten anzeigt, auf XmlDataSource die über ein-Steuerelement zugegriffen wird.The first part of the example shows a Web Forms page that displays XML data accessed through an XmlDataSource control. Ein Repeater -Steuerelement Eval(Object, String) verwendet die vereinfachte Methoden Syntax zum Binden an Datenelemente innerhalb des XML XmlDataSource -Dokuments, das das darstellt.A Repeater control uses simplified Eval(Object, String) method syntax to bind to data items within the XML document that the XmlDataSource represents. Er verwendet die Select(Object, String) -Methode, um IEnumerable eine Liste abzurufen und Sie als spät gebundene DataSource Eigenschaft für das Repeater Steuerelement zuzuweisen.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>

Im zweiten Beispiel wird die XML-Datei Order. XML bereitgestellt, die als Quelle der Daten verwendet wird, die auf der oben definierten Web Forms Seite angezeigt werden.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>  

Hinweise

Sie können die überladene Eval -Methode dieser Klasse verwenden, um das Ergebnis eines XPath-Ausdrucks zu binden, der für ein Objekt ausgeführt wird, das die IXPathNavigable - XmlNodeSchnittstelle implementiert, z. b.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. Sie können die Select -Methode verwenden, um die Ergebnisse eines XPath-Ausdrucks, der IXPathNavigable für ein- IEnumerable Objekt ausgeführt wird, als eine Liste von Knoten abzurufen.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. Diese Liste von Knoten kann direkt aufgelistet oder der DataSource -Eigenschaft eines Listen Steuer Elements zugewiesen werden, z Repeater . b. oder 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.

Sie können eine vereinfachte Version der Daten Bindungs Syntax verwenden, wenn Sie die XPathBinder Methoden deklarativ verwenden.You can use a simplified version of data-binding syntax when using the XPathBinder methods declaratively. Anstelle von XPathBinder.Eval(Container.DataItem XPath, xpath) können Sie(xpath) verwenden.Instead of calling XPathBinder.Eval(Container.DataItem, xpath) you can use XPath(xpath). XPathBinder.Select XPathSelectAnalog dazu können Sie(xpath) verwenden, um eineIEnumerable Gruppe von Knoten abzurufen.Container.DataItem``xpathSimilarly, instead of calling XPathBinder.Select(Container.DataItem,xpath), you can use XPathSelect(xpath) to retrieve an IEnumerable set of nodes. Wenn diese vereinfachte Syntax verwendet wird, Eval nehmen Select die-Methode und Container.DataItem die-Methode ein Standardkontext Objekt an.When using this simplified syntax, the Eval and Select methods assume a default Container.DataItem context object.

Weitere Informationen zur Datenbindung an ASP.NET-Server Steuerelemente finden Sie unter Syntax für Daten Bindungs Ausdrücke.For more information about data binding to ASP.NET server controls, see Data-Binding Expression Syntax.

Methoden

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

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.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)

Wertet XPath-Datenbindungsausdrücke zur Laufzeit aus.Evaluates XPath data-binding expressions at run time.

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

Wertet mithilfe des IXmlNamespaceResolver-Objekts, das zur Auflösung von Namespacepräfixen im XPath-Ausdruck angegeben wird, XPath-Datenbindungsausdrücke zur Laufzeit aus und formatiert das Ergebnis als Text, der im anfordernden Browser angezeigt wird.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)

Wertet XPath-Datenbindungsausdrücke zur Laufzeit aus und formatiert das Ergebnis als Text, der im anfordernden Browser angezeigt wird.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)

Wertet mithilfe des IXmlNamespaceResolver-Objekts, das zur Auflösung von Namespacepräfixen im XPath-Ausdruck angegeben wird, XPath-Datenbindungsausdrücke zur Laufzeit aus und formatiert das Ergebnis als Text, der im anfordernden Browser angezeigt wird.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()

Fungiert als Standardhashfunktion.Serves as the default hash function.

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

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

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

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

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

Verwendet einen XPath-Datenbindungsausdruck zur Laufzeit, um eine Liste mit Knoten zurückzugeben.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)

Verwendet das IXmlNamespaceResolver-Objekt, das zur Auflösung von Namespacepräfixen im XPath-Ausdruck angegeben wird, um mit einem XPath-Datenbindungsausdruck zur Laufzeit eine Liste von Knoten zurückzugeben.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()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)

Gilt für: