Поделиться через


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 или xpath параметр null.

Объект, указанный containerIXPathNavigable не является объектом.

Примеры

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

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

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

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

<%@ 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 или xpath параметр null.

Объект, указанный containerIXPathNavigableне является объектом.

Комментарии

Дополнительные сведения о строках форматирования в .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.

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