XPathBinder.Select Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
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.