XPathBinder.Eval 方法

定義

在執行階段針對 IXPathNavigable 物件來剖析及評估 XPath 資料繫結運算式。

多載

Eval(Object, String)

評估執行階段的 XPath 資料繫結運算式。

Eval(Object, String, String)

在執行階段評估 XPath 資料繫結運算式,並將結果格式化成為文字,以顯示於提出要求的瀏覽器中。

Eval(Object, String, IXmlNamespaceResolver)

透過使用 IXmlNamespaceResolver 物件 (指定用於解析 XPath 運算式中的命名空間前置詞),在執行階段評估 XPath 資料繫結運算式,並將結果格式化成為文字,以顯示於要求的瀏覽器中。

Eval(Object, String, String, IXmlNamespaceResolver)

透過使用 IXmlNamespaceResolver 物件 (指定用於解析 XPath 運算式中的命名空間前置詞),在執行階段評估 XPath 資料繫結運算式,並將結果格式化成為文字,以顯示於要求的瀏覽器中。

Eval(Object, String)

評估執行階段的 XPath 資料繫結運算式。

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

參數

container
Object

運算式所據以評估的 IXPathNavigable 物件參考。 這在網頁的指定語言中必須是有效的物件識別項。

xPath
String

container 到屬性值的 XPath 查詢 (此屬性值置於繫結的控制項屬性中)。

傳回

Object,從資料繫結運算式的評估產生。

例外狀況

containerxpath 參數為 null

container 所指定的物件不是 IXPathNavigable 物件。

範例

下列程式碼範例示範如何使用 XmlDataSource 控制項搭配樣板化 Repeater 控制項來顯示 XML 資料。 此範例有兩個部分:

  • 顯示 XML 資料的Web Form頁面。

  • 包含資料的 XML 檔案。

範例的第一個部分會顯示Web Form頁面,顯示透過 控制項存取的 XmlDataSource XML 資料。 Repeater控制項會使用簡化 Eval(Object, String) 的方法語法,系結至 XML 檔 XmlDataSource 內代表的資料項目。 它會使用 Select(Object, String) 方法來擷取 IEnumerable 清單,並將其指派為控制項的 Repeater 晚期繫結 DataSource 屬性。

<%@ 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>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
      <asp:XmlDataSource
        runat="server"
        id="XmlDataSource1"
        DataFile="bookstore2.xml"
        XPath="bookstore/genre[@name='fiction']" />

      <asp:Repeater
        runat="server"
        DataSourceID="XmlDataSource1">
        <ItemTemplate>
            <h1><%# XPath ("book/title") %></h1>
            <b>Author:</b>
            <%# XPath ("book/author/firstname") %>
            <%# XPath ("book/author/lastname") %>
            <asp:Repeater
                 DataSource='<%# XPathSelect ("book/chapters") %>'
                 runat="server">
                <ItemTemplate>
                     <%# XPath ("chapter/@name") %>
                </ItemTemplate>
            </asp:Repeater>
        </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>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
      <asp:XmlDataSource
        runat="server"
        id="XmlDataSource1"
        DataFile="bookstore2.xml"
        XPath="bookstore/genre[@name='fiction']" />

      <asp:Repeater
        runat="server"
        DataSourceID="XmlDataSource1">
        <ItemTemplate>
            <h1><%# XPath ("book/title") %></h1>
            <b>Author:</b>
            <%# XPath ("book/author/firstname") %>
            <%# XPath ("book/author/lastname") %>
            <asp:Repeater
                 DataSource='<%# XPathSelect ("book/chapters") %>'
                 runat="server">
                <ItemTemplate>
                     <%# XPath ("chapter/@name") %>
                </ItemTemplate>
            </asp:Repeater>
        </ItemTemplate>
    </asp:Repeater>
  </form>
  </body>
</html>

第二個範例會提供 XML 檔案Bookstore2.xml,用來作為上面所定義之Web Form頁面中所顯示之資料的來源。

<?xml version="1.0" encoding="iso-8859-1"?>  
  <bookstore>  
    <genre name="fiction">  
      <book ISBN="10-861003-324">  
        <author>  
          <firstname>test</firstname>  
          <lastname>test2</lastname>  
        </author>  
        <title>The Handmaid's Tale</title>  
        <price>12.95</price>  
        <chapters>  
          <chapter num="1" name="Introduction" />   
          <chapter num="2" name="Body" />   
          <chapter num="3" name="Conclusion" />  
        </chapters>  
      </book>  
    </genre>  
    <genre name="nonfiction">  
      <book genre="nonfiction" ISBN="1-861001-57-5">  
        <author>  
          <firstname>test3</firstname>  
          <lastname>test4</lastname>  
        </author>      
        <title>Pride And Prejudice</title>  
        <price>24.95</price>  
        <chapters>  
          <chapter num="1" name="Introduction" />   
          <chapter num="2" name="Body" />  
          <chapter num="3" name="Conclusion" />  
        </chapters>  
      </book>  
    </genre>  
  </bookstore>  

備註

如果您想要簡化 XML 節點轉換成要在瀏覽器中顯示的文字字串,則可以以宣告方式使用 Eval 方法。 若要這樣做,您必須將 %# 和 % > 標籤放在 < 資料系結運算式周圍的標準 ASP.NET 資料系結中。

對於任何清單 ASP.NET 伺服器控制項,例如 DataListDataGridRepeatercontainer 參數應該是 Container.DataItem 。 如果您要對頁面進行系結,參數 container 應該是 Page

另請參閱

適用於

Eval(Object, String, String)

在執行階段評估 XPath 資料繫結運算式,並將結果格式化成為文字,以顯示於提出要求的瀏覽器中。

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

參數

container
Object

運算式所據以評估的 IXPathNavigable 物件參考。 這在網頁的指定語言中必須是有效的物件識別項。

xPath
String

container 到屬性值的 XPath 查詢 (此屬性值要置於繫結的控制項屬性中)。

format
String

.NET Framework 格式字串 (類似於 Format(String, Object) 所使用的字串),會將 IXPathNavigable 物件 (由資料繫結運算式評估所產生) 轉換為可以由要求之瀏覽器所顯示的 String

傳回

String,從資料繫結運算式評估和字串型別轉換產生。

例外狀況

containerxpath 參數為 null

container 所指定的物件不是 IXPathNavigable

備註

若要深入瞭解.NET Framework中的格式字串,請參閱格式化類型

如果您想要簡化 XML 節點轉換成要在瀏覽器中顯示的文字字串,則可以以宣告方式使用 Eval(Object, String) 方法。 若要這樣做,您必須將 %# 和 % > 標籤放在 < 資料系結運算式周圍的標準 ASP.NET 資料系結中。

對於任何清單 ASP.NET 伺服器控制項,例如 DataListDataGridRepeatercontainer 參數應該是 Container.DataItem 。 如果您要對頁面進行系結,參數 container 應該是 Page

另請參閱

適用於

Eval(Object, String, IXmlNamespaceResolver)

透過使用 IXmlNamespaceResolver 物件 (指定用於解析 XPath 運算式中的命名空間前置詞),在執行階段評估 XPath 資料繫結運算式,並將結果格式化成為文字,以顯示於要求的瀏覽器中。

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

參數

container
Object

運算式所據以評估的 IXPathNavigable 物件參考。 這在網頁的指定語言中必須是有效的物件識別項。

xPath
String

container 到屬性值的 XPath 查詢 (此屬性值要置於繫結的控制項屬性中)。

resolver
IXmlNamespaceResolver

IXmlNamespaceResolver 物件,用來解析 XPath 運算式中的命名空間前置詞。

傳回

Object,從資料繫結運算式的評估產生。

備註

如果您想要簡化 XML 節點轉換成要在瀏覽器中顯示的文字字串,則可以以宣告方式使用 Eval 方法。 若要這樣做,您必須將 %# 和 % > 標籤放在 < 資料系結運算式周圍的標準 ASP.NET 資料系結中。 資料系結運算式包含 XPath 運算式,以及 IXmlNamespaceResolver 解析命名空間參考的物件。

對於任何清單 ASP.NET 伺服器控制項,例如 DataListDataGridRepeatercontainer 參數應該是 Container.DataItem 。 如果您要對頁面進行系結,參數 container 應該是 Page

適用於

Eval(Object, String, String, IXmlNamespaceResolver)

透過使用 IXmlNamespaceResolver 物件 (指定用於解析 XPath 運算式中的命名空間前置詞),在執行階段評估 XPath 資料繫結運算式,並將結果格式化成為文字,以顯示於要求的瀏覽器中。

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

參數

container
Object

運算式所據以評估的 IXPathNavigable 物件參考。 這在網頁的指定語言中必須是有效的物件識別項。

xPath
String

container 到屬性值的 XPath 查詢 (此屬性值要置於繫結的控制項屬性中)。

format
String

.NET Framework 格式字串 (類似於 Format(String, Object) 所使用的字串),會將 IXPathNavigable 物件 (由資料繫結運算式評估所產生) 轉換為可以由要求之瀏覽器所顯示的 String

resolver
IXmlNamespaceResolver

IXmlNamespaceResolver 物件,用來解析 XPath 運算式中的命名空間前置詞。

傳回

String,從資料繫結運算式評估和字串型別轉換產生。

備註

如果您想要簡化 XML 節點轉換成要在瀏覽器中顯示的文字字串,則可以以宣告方式使用 Eval 方法。 若要這樣做,您必須將 %# 和 % > 標籤放在 < 資料系結運算式周圍的標準 ASP.NET 資料系結中。 資料系結運算式包含 XPath 運算式,以及 IXmlNamespaceResolver 解析命名空間參考的物件。

對於任何清單 ASP.NET 伺服器控制項,例如 DataListDataGridRepeatercontainer 參數應該是 Container.DataItem 。 如果您要對頁面進行系結,參數 container 應該是 Page

適用於