XPathBinder.Eval Метод

Определение

Синтаксически анализирует и вычисляет выражение XPath привязки данных объекта IXPathNavigable в период выполнения.

Перегрузки

Eval(Object, String)

Вычисляет XPath выражения привязки данных в период выполнения.

Eval(Object, String, String)

Вычисляет выражение XPath привязки данных в период выполнения и формирует результат вычислений в виде текста, отображаемого в запрашивающем браузере.

Eval(Object, String, IXmlNamespaceResolver)

Вычисляет выражения XPath привязки данных в период выполнения и форматирует результат, как текст, отображаемый запрашивающим браузером, используя объект IXmlNamespaceResolver, заданный для разрешения префиксов пространства имен в выражении XPath.

Eval(Object, String, String, IXmlNamespaceResolver)

Вычисляет выражения XPath привязки данных в период выполнения и форматирует результат, как текст, отображаемый запрашивающим браузером, используя объект IXmlNamespaceResolver, заданный для разрешения префиксов пространства имен в выражении 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

Запрос XPath из container к значению свойства, помещаемому в свойство привязанного элемента управления.

Возвращаемое значение

Объект Object, являющийся результатом вычисления выражения привязки данных.

Исключения

Значение параметра container или параметра xpathnull.

Объект, заданный container, не является объектом IXPathNavigable.

Примеры

В следующем примере кода показано, как использовать XmlDataSource элемент управления с шаблонным Repeater элементом управления для отображения XML-данных. Этот пример состоит из двух частей:

  • Страница веб-формы, на котором отображаются XML-данные.

  • XML-файл, содержащий данные.

В первой части примера показана страница веб-формы, на котором отображаются XML-данные, к которым осуществляется доступ через XmlDataSource элемент управления . Элемент Repeater управления использует упрощенный Eval(Object, String) синтаксис метода для привязки к элементам данных в XML-документе XmlDataSource , который представляет . Он использует метод для Select(Object, String) получения IEnumerable списка и назначения его в качестве свойства с поздней привязкой DataSourceRepeater для элемента управления .

<%@ 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, который используется в качестве источника данных, отображаемых на странице веб-формы, определенной выше.

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

Комментарии

Метод можно использовать декларативно Eval , если требуется упростить приведение xml-узла к текстовой строке, отображаемой в браузере. Для этого необходимо поместить <теги %# и %> , которые также используются в стандартной ASP.NET привязке данных, вокруг выражения привязки данных.

Для любого списка ASP.NET серверных элементов управления, таких как DataList, DataGridили Repeater, container параметр должен иметь значение 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

Запрос XPath из container к значению свойства, помещаемому в свойство привязанного элемента управления.

format
String

Строка форматирования .NET Framework, аналогичная используемой в Format(String, Object) и преобразующая объект IXPathNavigable (являющийся результатом вычисления выражения привязки данных) в строку String, которая может быть отображена запрашивающим браузером.

Возвращаемое значение

Строка String, являющаяся результатом вычисления выражений привязки данных и преобразования в строковый тип.

Исключения

Значение параметра container или параметра xpathnull.

Объект, заданный container, не является объектом IXPathNavigable.

Комментарии

Дополнительные сведения о строках форматирования в платформа .NET Framework см. в разделе Типы форматирования.

Метод можно использовать Eval(Object, String) декларативно, если требуется упростить приведение узла XML к текстовой строке, отображаемой в браузере. Для этого необходимо поместить <теги %# и %> , которые также используются в стандартной ASP.NET привязке данных, вокруг выражения привязки данных.

Для любого списка ASP.NET серверных элементов управления, таких как DataList, DataGridили Repeater, container параметр должен иметь значение Container.DataItem. Если выполняется привязка к странице, container параметр должен иметь значение Page.

См. также раздел

Применяется к

Eval(Object, String, IXmlNamespaceResolver)

Вычисляет выражения XPath привязки данных в период выполнения и форматирует результат, как текст, отображаемый запрашивающим браузером, используя объект IXmlNamespaceResolver, заданный для разрешения префиксов пространства имен в выражении 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

Запрос XPath из container к значению свойства, помещаемому в свойство привязанного элемента управления.

resolver
IXmlNamespaceResolver

Объект IXmlNamespaceResolver, используемый для разрешения префиксов пространства имен в выражении XPath.

Возвращаемое значение

Объект Object, являющийся результатом вычисления выражения привязки данных.

Комментарии

Метод можно использовать Eval декларативно, если требуется упростить приведение узла XML к текстовой строке, отображаемой в браузере. Для этого необходимо поместить <теги %# и %> , которые также используются в стандартной ASP.NET привязке данных, вокруг выражения привязки данных. Выражение привязки данных включает выражение XPath и IXmlNamespaceResolver объект для разрешения ссылки на пространство имен.

Для любого списка ASP.NET серверных элементов управления, таких как DataList, DataGridили Repeater, container параметр должен иметь значение Container.DataItem. Если выполняется привязка к странице, container параметр должен иметь значение Page.

Применяется к

Eval(Object, String, String, IXmlNamespaceResolver)

Вычисляет выражения XPath привязки данных в период выполнения и форматирует результат, как текст, отображаемый запрашивающим браузером, используя объект IXmlNamespaceResolver, заданный для разрешения префиксов пространства имен в выражении 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

Запрос XPath из container к значению свойства, помещаемому в свойство привязанного элемента управления.

format
String

Строка форматирования .NET Framework, аналогичная используемой в Format(String, Object) и преобразующая объект IXPathNavigable (являющийся результатом вычисления выражения привязки данных) в строку String, которая может быть отображена запрашивающим браузером.

resolver
IXmlNamespaceResolver

Объект IXmlNamespaceResolver, используемый для разрешения префиксов пространства имен в выражении XPath.

Возвращаемое значение

Строка String, являющаяся результатом вычисления выражений привязки данных и преобразования в строковый тип.

Комментарии

Метод можно использовать Eval декларативно, если требуется упростить приведение узла XML к текстовой строке, отображаемой в браузере. Для этого необходимо поместить <теги %# и %> , которые также используются в стандартной ASP.NET привязке данных, вокруг выражения привязки данных. Выражение привязки данных включает выражение XPath и IXmlNamespaceResolver объект для разрешения ссылки на пространство имен.

Для любого списка ASP.NET серверных элементов управления, таких как DataList, DataGridили Repeater, container параметр должен иметь значение Container.DataItem. Если выполняется привязка к странице, container параметр должен иметь значение Page.

Применяется к