XPathBinder.Select Methode

Definitie

Gebruikt een XPath-expressie voor gegevensbinding tijdens runtime om een lijst met knooppunten te retourneren.

Overloads

Name Description
Select(Object, String)

Gebruikt een XPath-expressie voor gegevensbinding tijdens runtime om een lijst met knooppunten te retourneren.

Select(Object, String, IXmlNamespaceResolver)

Maakt gebruik van een XPath-expressie voor gegevensbinding tijdens runtime om een lijst met knooppunten te retourneren met behulp van het IXmlNamespaceResolver object dat is opgegeven om naamruimtevoorvoegsels in de XPath-expressie op te lossen.

Opmerkingen

U kunt de overbelaste Select methode declaratief gebruiken als u het ophalen van een set knooppunten wilt vereenvoudigen met behulp van een XPath-query. Hiervoor moet u de tags <%# en %> plaatsen, die ook worden gebruikt in de standaardgegevensbinding ASP.NET, rond de XPath-query.

Select(Object, String)

Gebruikt een XPath-expressie voor gegevensbinding tijdens runtime om een lijst met knooppunten te retourneren.

public:
 static System::Collections::IEnumerable ^ Select(System::Object ^ container, System::String ^ xPath);
public static System.Collections.IEnumerable Select(object container, string xPath);
static member Select : obj * string -> System.Collections.IEnumerable
Public Shared Function Select (container As Object, xPath As String) As IEnumerable

Parameters

container
Object

De IXPathNavigable objectverwijzing waarop de expressie wordt geëvalueerd. Dit moet een geldige object-id zijn in de opgegeven taal van de pagina.

xPath
String

De XPath-query waarmee een lijst met knooppunten wordt opgehaald.

Retouren

Een IEnumerable lijst met knooppunten.

Uitzonderingen

De container of xpath parameter is null.

Het object dat is opgegeven door container , is geen IXPathNavigable.

Het huidige knooppunt van het XPathNodeIterator bestand heeft geen gekoppeld XML-knooppunt.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe u een XmlDataSource besturingselement gebruikt met een sjabloon Repeater voor het weergeven van XML-gegevens. Dit voorbeeld bestaat uit twee delen:

  • Een webpagina met XML-gegevens.

  • Een XML-bestand dat de gegevens bevat.

In het eerste deel van het voorbeeld ziet u een webpagina met XML-gegevens die via een XmlDataSource besturingselement worden geopend. Een Repeater besturingselement maakt gebruik van de vereenvoudigde Eval(Object, String) methodesyntaxis om te binden aan gegevensitems in het XML-document dat het XmlDataSource voorstelt. De methode wordt gebruikt Select(Object, String) om een IEnumerable lijst op te halen en toe te wijzen als een eigenschap die te laat is gebonden DataSource voor het Repeater besturingselement.

<%@ 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>

In het tweede voorbeeld ziet u het XML-bestand, Order.xml, dat wordt gebruikt als de bron van de gegevens die worden weergegeven op de pagina Webformulieren die hierboven is gedefinieerd.

<?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>

Opmerkingen

U kunt de Select(Object, String) methode declaratief gebruiken als u het ophalen van een set knooppunten wilt vereenvoudigen met behulp van een XPath-query. Hiervoor moet u de tags <%# en %> plaatsen, die ook worden gebruikt in de standaardgegevensbinding ASP.NET, rond de XPath-query.

Voor een van de besturingselementen van de lijst ASP.NET server, zoals DataList, DataGrid of Repeater, moet de parameter containerContainer.DataItem zijn.

Van toepassing op

Select(Object, String, IXmlNamespaceResolver)

Maakt gebruik van een XPath-expressie voor gegevensbinding tijdens runtime om een lijst met knooppunten te retourneren met behulp van het IXmlNamespaceResolver object dat is opgegeven om naamruimtevoorvoegsels in de XPath-expressie op te lossen.

public:
 static System::Collections::IEnumerable ^ Select(System::Object ^ container, System::String ^ xPath, System::Xml::IXmlNamespaceResolver ^ resolver);
public static System.Collections.IEnumerable Select(object container, string xPath, System.Xml.IXmlNamespaceResolver resolver);
static member Select : obj * string * System.Xml.IXmlNamespaceResolver -> System.Collections.IEnumerable
Public Shared Function Select (container As Object, xPath As String, resolver As IXmlNamespaceResolver) As IEnumerable

Parameters

container
Object

De IXPathNavigable objectverwijzing waarop de expressie wordt geëvalueerd. Dit moet een geldige object-id zijn in de opgegeven taal van de pagina.

xPath
String

De XPath-query waarmee een lijst met knooppunten wordt opgehaald.

resolver
IXmlNamespaceResolver

Het IXmlNamespaceResolver object dat wordt gebruikt om naamruimtevoorvoegsels in de XPath-expressie op te lossen.

Retouren

Een IEnumerable lijst met knooppunten.

Opmerkingen

U kunt de Select methode declaratief gebruiken als u het ophalen van een set knooppunten wilt vereenvoudigen met behulp van een XPath-query. Hiervoor moet u de tags <%# en %> plaatsen, die ook worden gebruikt in de standaardgegevensbinding ASP.NET, rond de XPath-query en een IXmlNamespaceResolver-object om de naamruimteverwijzing op te lossen.

Voor een van de besturingselementen van de lijst ASP.NET server, zoals DataList, DataGrid of Repeater, moet de parameter containerContainer.DataItem zijn.

Van toepassing op