Белорусская цифровая библиотека





Сегодня в номере

Новости
  • altWebDeveloper #4
  • ASP.NET Developer Kits
  • Google остается лидером поиска в интернете
  • Microsoft открыла Hotmail для легального спама
  • Стартовал восьмой Российский интернет-форум
  • Новый российский сервис для пересылки файлов без электронной почты
  • Немецкая программа для обхода блокираторов рекламы
  • Конкурс для разработчиков .NET!
  • Новости .NET
  • "Десерт": Microsoft запатентовала яблоки
    Microsoft .NET
  • Доступ к файлам
  • Использование «ASP:XML runat=server> внутри страницы ASP.NET
  • Как сохранить позицию скроллинга странице после PostBack
  • Использование Microsoft Visual Studio .NET
  • Как создать решение с компонентами, написанными на разных языках
  • Вопросы и ответы конкурса разработчиков .NET
  • Visual Studio для "бедных"
  • ASP .NET Web Matrix
  • C# - инструмент разработки SharpDevelop
    Web-promoting
  • Стратегии позиционирования сайта в поисковых системах
  • Глоссарий терминов по поисковым системам
  • Что такое Robots.txt?
  • Трафик от ссылающихся сайтов
  • Анализ спроса и повышение видимости в поисковых машинах
  • Богатые и бедные проектовладельцы
  • Поисковые системы в интернете
  • Как выбрать поисковую машину
  • Как сделать веб-сайт эффективным
    .NET on-line
  • Англоязычные сайты
  • Русскоязычные сайты
  • Обмен ссылками
    Для души
  • Брюс Стерлинг
    Наш нейронный Чернобыль


    Рассылка журнала

    Рассылки@Mail.ru
    Новости altWebDeveloper

    © 2004 CAS "altDesign"
    Все права защищены

  • ..: altWebDeveloper - сетевой журнал для вебмастеров
    и разработчиков Microsoft .NET :..

    ..: Использование «ASP:XML runat=server> внутри страницы ASP.NET :..



    Автор: Scott Guthrie
    Источник: .net101
    Перевод: Валерий В. Макеев
    (deepInfinity)



    Примеры использования серверного элемента управления , входящего в состав Visual Studio .NET.

    <html>
       <body>
          <asp:xml id="MyXml1" DocumentSource="Perf.xml" TransformSource="Perf.xsl" runat=server/>
       </body>
    </html>
    Perf.xml:
    <?xml version='1.0'?>
    <sales>
                <division id='North'>
                            <revenue>10</revenue>
                            <growth>9</growth>
                            <bonus>7</bonus>
                </division>
                <division id='South'>
                            <revenue>4</revenue>
                            <growth>3</growth>
                            <bonus>4</bonus>
                </division>
                <division id='West'>
                            <revenue>6</revenue>
                            <growth>-1.5</growth>
                            <bonus>2</bonus>
                </division>
    </sales>
     
    Perf.xsl:
    
    <xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
        <xsl:template match="/">
        <style> 
            .value { width:"25%";font-family:courier new; font-size:.8em; white-space=pre;} 
        </style>
        <table border="1" cellspacing="0" cellpadding="3" bordercolor="gainsboro">
            <tr>
                <th>Division</th>
                <th>Revenue</th>
                <th>Growth</th>
                <th>Bonus</th>
            </tr>
            <xsl:for-each select='sales/division'>
                <tr>
                    <td class="value"><em><xsl:value-of select='@id'/></em></td>
                    <td class="value"><xsl:value-of select='revenue'/></td>
                    <td class="value">
                        <xsl:if test='growth &lt; 0'>
                            <xsl:attribute name='style'>
                                <xsl:text>color:red</xsl:text>
                            </xsl:attribute>
                        </xsl:if>
                        <xsl:value-of select='growth'/>
                    </td>
                    <td class="value"><xsl:value-of select='bonus'/></td>
                </tr>
            </xsl:for-each>
        </table>
        </xsl:template>
    </xsl:stylesheet>

    Обратите внимание, что серверный элемент управление <asp:xml> имеет четыре свойства: DocumentSource (путь к XML файлу данных), TransformSource (путь к XSL/T преобразовывающему файлу), Document (ссылка на объект XmlDocument), и Transform (ссылка на объект XslTransform). Вы можете программно управлять любым из них, передавая "id", точно так же как и любым другим серверным элементом управления.

    Обратите также внимание, что Вы можете при желании получить произвольный XML документ из базы данных (любой базы данных - SQL или иная другая). Это можно сделать, создав XmlDataDocument из заполненного набора данных. Приведенный ниже пример демонстрирует, как просто можно этого добиться. Он также иллюстрирует использование <%@ Page ContentType="whatever" %> директивы, которая является новой в ASP.NET - и разрешает Вам легко и описательно управлять HTTP содержимым, которое ASP.NET посылает назад клиенту в процессе запроса.

    <%@ Page ContentType="text/xml" %>
    <%@ Import Namespace="System.Data" %>
    <%@ Import Namespace="System.Data.SQL" %>
    <%@ Import Namespace="System.Xml" %>
    <script language="VB" runat=server>
        Function GetProductData() As DataSet
          Dim connection as New SQLConnection _
    	  ("server=localhost;uid=sa;pwd=;database=northwind")
          Dim command as New SQLDataSetCommand _ 
    	  ("SELECT * FROM Products WHERE ProductID<8", connection)
          Dim dataset As New DataSet()
          command.FillDataSet(dataset, "dataset")
          Return dataset
        End Function
        Sub Page_Load(Sender as Object, E as EventArgs)
          Dim DataSet1 as DataSet = GetProductData()
          Dim XmlDoc as XmlDocument = New XmlDataDocument(DataSet1)
          MyXml1.Document = XmlDoc
        End Sub
    </script>
    <asp:xml id="MyXml1" runat=server/>





    При перепечатке любого материала с журнала или с сайта, видимая ссылка на источник http://altwebdeveloper.nm.ru и все имена, ссылки авторов обязательны.

    © 2004 CAS "altDesign"
    © Валерий В. Макеев (deepInfinity)



    @ library.by