XPathBinder.Select Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir düğüm listesi döndürmek için çalışma zamanında bir XPath veri bağlama ifadesi kullanır.
Aşırı Yüklemeler
Select(Object, String) |
Bir düğüm listesi döndürmek için çalışma zamanında bir XPath veri bağlama ifadesi kullanır. |
Select(Object, String, IXmlNamespaceResolver) |
XPath ifadesindeki ad alanı ön eklerini çözümlemek için belirtilen nesneyi kullanarak IXmlNamespaceResolver bir düğüm listesi döndürmek için çalışma zamanında bir XPath veri bağlama ifadesi kullanır. |
Açıklamalar
XPath sorgusu kullanarak bir düğüm kümesinin alınmasını basitleştirmek istiyorsanız aşırı yüklenmiş Select yöntemini bildirim temelli olarak kullanabilirsiniz. Bunu yapmak için, standart ASP.NET veri bağlamada da kullanılan %# ve %> etiketlerini XPath sorgusunun çevresine yerleştirmeniz <gerekir.
Select(Object, String)
Bir düğüm listesi döndürmek için çalışma zamanında bir XPath veri bağlama ifadesi kullanır.
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
Parametreler
- container
- Object
İfadenin IXPathNavigable değerlendirıldığı nesne başvurusu. Bu, sayfanın belirtilen dilinde geçerli bir nesne tanımlayıcısı olmalıdır.
- xPath
- String
Düğüm listesini alan XPath sorgusu.
Döndürülenler
Düğüm IEnumerable listesi.
Özel durumlar
container
veya xpath
parametresidirnull
.
tarafından container
belirtilen nesne bir IXPathNavigabledeğil.
geçerli düğümünün XPathNodeIterator ilişkili bir XML düğümü yok.
Örnekler
Aşağıdaki kod örneği, XML verilerini görüntülemek için bir denetimin şablonlu Repeater denetimle nasıl kullanılacağını XmlDataSource gösterir. Bu örnekte iki bölüm vardır:
XML verilerini görüntüleyen bir Web Forms sayfası.
Verileri içeren bir XML dosyası.
Örneğin ilk bölümünde, denetim aracılığıyla XmlDataSource erişilen XML verilerini görüntüleyen bir Web Forms sayfası gösterilir. Denetim Repeater , temsil ettiği XML belgesi içindeki veri öğelerine bağlanmak için basitleştirilmiş Eval(Object, String) yöntem söz dizimini XmlDataSource kullanır. Bir listeyi almak IEnumerable ve denetim için geç bağlanan DataSource bir özellik olarak atamak için Repeater yöntemini kullanırSelect(Object, String).
<%@ 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>
İkinci örnek, yukarıda tanımlanan Web Forms sayfasında görüntülenen verilerin kaynağı olarak kullanılan xml dosyasını Order.xml sağlar.
<?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>
Açıklamalar
XPath sorgusu kullanarak bir düğüm kümesinin alınmasını basitleştirmek istiyorsanız yöntemini bildirimli olarak kullanabilirsiniz Select(Object, String) . Bunu yapmak için, standart ASP.NET veri bağlamada da kullanılan %# ve %> etiketlerini XPath sorgusunun çevresine yerleştirmeniz <gerekir.
, veya container
Repeatergibi DataListDataGridliste ASP.NET sunucu denetimlerinden herhangi biri için parametresi olmalıdırContainer.DataItem
.
Şunlara uygulanır
Select(Object, String, IXmlNamespaceResolver)
XPath ifadesindeki ad alanı ön eklerini çözümlemek için belirtilen nesneyi kullanarak IXmlNamespaceResolver bir düğüm listesi döndürmek için çalışma zamanında bir XPath veri bağlama ifadesi kullanır.
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
Parametreler
- container
- Object
İfadenin IXPathNavigable değerlendirıldığı nesne başvurusu. Bu, sayfanın belirtilen dilinde geçerli bir nesne tanımlayıcısı olmalıdır.
- xPath
- String
Düğüm listesini alan XPath sorgusu.
- resolver
- IXmlNamespaceResolver
IXmlNamespaceResolver XPath ifadesindeki ad alanı ön eklerini çözümlemek için kullanılan nesne.
Döndürülenler
Düğüm IEnumerable listesi.
Açıklamalar
XPath sorgusu kullanarak bir düğüm kümesinin alınmasını basitleştirmek istiyorsanız yöntemini bildirimli olarak kullanabilirsiniz Select . Bunu yapmak için standart ASP.NET veri bağlamasında da kullanılan %# ve %> etiketlerini XPath sorgusunun ve ad alanı başvurusunu çözümlemek için bir IXmlNamespaceResolver nesnenin çevresine yerleştirmeniz <gerekir.
, veya container
Repeatergibi DataListDataGridliste ASP.NET sunucu denetimlerinden herhangi biri için parametresi olmalıdırContainer.DataItem
.