日韩av爽爽爽久久久久久,嫩草av久久伊人妇女超级a,久久精品a亚洲国产v高清不卡,久久成人国产精品一区二区

知識學(xué)堂
  • ·聯(lián)系電話:+86.023-75585550
  • ·聯(lián)系傳真:+86.023-75585550
  • ·24小時(shí)手機(jī):13896886023
  • ·QQ 咨 詢:361652718 513960520
當(dāng)前位置 > 首頁 > 知識學(xué)堂 > 網(wǎng)站建設(shè)知識
Web服務(wù)器控件:XML控件
更新時(shí)間:2012-01-12 | 發(fā)布人:本站 | 點(diǎn)擊率:484

閱讀此文請先查看網(wǎng)頁教學(xué)網(wǎng)的:ASP.NET入門教程:Web服務(wù)器控件,簡單講述了Web服務(wù)器控件的使用方法。

定義和用法

XML 控件用于顯示 XML 文檔或 XSL 轉(zhuǎn)換的結(jié)果。

屬性

通過設(shè)置 Document、DocumentContent 或 DocumentSource 這三個(gè)屬性之一來指定要顯示的 XML 文檔。這三個(gè)屬性表示可以顯示的不同類型的 XML 文檔。通過設(shè)置適當(dāng)?shù)膶傩,可以顯示 System.Xml.XmlDocument、XML 字符串或 XML 文件。

通過設(shè)置 Transform、TransformSource 這兩個(gè)屬性之一,可以選擇指定 XSL 轉(zhuǎn)換 (XSLT) 樣式表,該樣式表在 XML 文檔被寫入輸出流之前對其進(jìn)行格式化。這兩個(gè)屬性表示可用于格式化 XML 文檔的不同類型的 XSL 轉(zhuǎn)換樣式表。通過設(shè)置適當(dāng)?shù)膶傩裕梢杂?System.Xml.Xsl.XslCompiledTransform 對象或 XSL 轉(zhuǎn)換樣式表文件來格式化 XML 文檔。如果未指定 XSL 轉(zhuǎn)換樣式表,則使用默認(rèn)格式顯示 XML 文檔。

Xml 類還提供 TransformArgumentList 屬性,該屬性使您得以提供具有可選參數(shù)的 XSL 轉(zhuǎn)換樣式表。這些參數(shù)可以是 XSL 轉(zhuǎn)換 (XSLT) 參數(shù)或擴(kuò)展對象。

屬性 描述 .NET
Document 不贊成使用。規(guī)定使用 System.Xml.XmlDocument 對象的 XML 文檔。 1.0
DocumentContent 規(guī)定 XML 字符串。 1.0
DocumentSource 規(guī)定在 Xml 控件中顯示的 XML 文檔的路徑。 1.0
runat 規(guī)定該控件是服務(wù)器控件。必須設(shè)置為 "server"。 1.0
Transform 使用 System.Xml.Xsl.XslTransform 對象來格式化 XML 文檔。 1.0
TransformArgumentList 包含傳遞給樣式表并在擴(kuò)展樣式表語言轉(zhuǎn)換 (XSLT) 中使用的可選參數(shù)列表。  
TransformSource 規(guī)定 XSL 轉(zhuǎn)換文件的路徑。  
XPathNavigator 用于導(dǎo)航和編輯與 Xml 控件關(guān)聯(lián)的 XML 數(shù)據(jù)的光標(biāo)模型。  

控件標(biāo)準(zhǔn)屬性

AppRelativeTemplateSourceDirectory, BindingContainer, ClientID, Controls, 
EnableTheming, EnableViewState, ID, NamingContainer, Page, Parent, Site, 
TemplateControl, TemplateSourceDirectory, UniqueID, Visible

語法

<asp:Xml
    DocumentSource="uri"
    EnableTheming="True|False"
    EnableViewState="True|False"
    ID="string"
    OnDataBinding="DataBinding event handler"
    OnDisposed="Disposed event handler"
    OnInit="Init event handler"
    OnLoad="Load event handler"
    OnPreRender="PreRender event handler"
    OnUnload="Unload event handler"
    runat="server"
    SkinID="string"
    TransformSource="string"
    Visible="True|False"
/>

備注:使用 Xml 控件顯示 XML 文檔的內(nèi)容或 XSL 轉(zhuǎn)換的結(jié)果。

要顯示的 XML 文檔通過設(shè)置三個(gè)屬性之一來指定。這三個(gè)屬性表示可以顯示的 XML 文檔的不同類型。通過設(shè)置適當(dāng)?shù)膶傩,可以顯示 XmlDocument、XML 字符串或 XML 文件。

注意:必須至少設(shè)置一個(gè) XML 文檔屬性,否則將不會顯示任何 XML 文檔。如果設(shè)置了多個(gè) XML 文檔屬性,則顯示所設(shè)置的最后一個(gè)屬性中的 XML 文檔。其他屬性中的文檔將被忽略。

還可根據(jù)需要通過設(shè)置兩個(gè)屬性之一來指定 XSL 轉(zhuǎn)換文檔,該文檔在將 XML 文檔寫入輸出流之前對其進(jìn)行格式化。這兩個(gè)屬性表示可用于格式化 XML 文檔的 XSL 轉(zhuǎn)換文檔的不同類型。通過設(shè)置適當(dāng)?shù)膶傩裕梢允褂?XslTransform 或 XSL 轉(zhuǎn)換文件格式化 XML 文檔。如果未指定任何 XSL 轉(zhuǎn)換文檔,則使用默認(rèn)格式顯示 XML 文檔。

注意:XSL 轉(zhuǎn)換文檔是可選的。不需要設(shè)置 Transform 或 TransformSource 屬性。如果同時(shí)設(shè)置了兩個(gè) XSL 轉(zhuǎn)換文檔屬性,則所設(shè)置的最后一個(gè)屬性將確定使用哪個(gè) XSL 轉(zhuǎn)換文檔格式化 XML 文檔。另一個(gè)屬性將被忽略。

Xml 類還提供了 TransformArgumentList 屬性,您可以使用該屬性為 XSL 轉(zhuǎn)換提供可選參數(shù)。這些參數(shù)可以是 XSLT 參數(shù)或者是擴(kuò)展對象。

示例

以下內(nèi)容顯示一個(gè)示例 XML 文件。

<People>
   <Person>
      <Name>
         <FirstName>Joe</FirstName>
         <LastName>Suits</LastName>
      </Name>
      <Address>
         <Street>1800 Success Way</Street>
         <City>Redmond</City>
         <State>WA</State>
         <ZipCode>98052</ZipCode>
      </Address>
      <Job>
         <Title>CEO</Title>
         <Description>Wears the nice suit</Description>
      </Job>
   </Person>
   <Person>
      <Name>
         <FirstName>Linda</FirstName>
         <LastName>Sue</LastName>
      </Name>
      <Address>
         <Street>1302 American St.</Street>
         <City>Paso Robles</City>
         <State>CA</State>
         <ZipCode>93447</ZipCode>
      </Address>
      <Job>
         <Title>Attorney</Title>
         <Description>Stands up for justice</Description>
      </Job>
   </Person>
   <Person>
      <Name>
         <FirstName>Jeremy</FirstName>
         <LastName>Boards</LastName>
      </Name>
      <Address>
         <Street>34 Palm Avenue</Street>
         <City>Waikiki</City>
         <State>HI</State>
         <ZipCode>98052</ZipCode>
      </Address>
      <Job>
         <Title>Pro Surfer</Title>
         <Description>Rides the big waves</Description>
      </Job>
   </Person>
   <Person>
      <Name>
         <FirstName>Joan</FirstName>
         <LastName>Page</LastName>
      </Name>
      <Address>
         <Street>700 Webmaster Road</Street>
         <City>Redmond</City>
         <State>WA</State>
         <ZipCode>98073</ZipCode>
      </Address>
      <Job>
         <Title>Web Site Developer</Title>
         <Description>Writes the pretty pages</Description>
      </Job>
   </Person>
</People>

以下內(nèi)容顯示一個(gè)示例 XSL 轉(zhuǎn)換文件。

<xsl:stylesheet version="1.0" xmlns:xsl="   <xsl:template match="/People">
      <xsl:apply-templates select="Person" />
   </xsl:template> 
   <xsl:template match="Person">
      <table width="100%" border="1">
         <tr>
            <td>
               <b>
                  <xsl:value-of select="Name/FirstName" />
                  &#160;
                  <xsl:value-of select="Name/LastName" />
               </b>
            </td>
         </tr>
         <tr>
            <td>
               <xsl:value-of select="Address/Street" /><br />
               <xsl:value-of select="Address/City" />
               ,
               <xsl:value-of select="Address/State" />
               <xsl:value-of select="Address/Zip" />
            </td>
         </tr>
         <tr>
            <td>
               Job Title: <xsl:value-of select="Job/Title" /><br />
               Description: <xsl:value-of select="Job/Description" />
            </td>
         </tr>
      </table>
   </xsl:template>
   <xsl:template match="bookstore">
      <!-- Prices and books -->
      <bookstore>
         <xsl:apply-templates select="book"/>
      </bookstore>
   </xsl:template>
   <xsl:template match="book">
      <book>
         <xsl:attribute name="ISBN">
            <xsl:value-of select="@ISBN"/>
         </xsl:attribute>
         <price>
            <xsl:value-of select="price"/>
         </price>
         <xsl:text>
         </xsl:text>
      </book>
   </xsl:template>
</xsl:stylesheet>

下面的示例演示如何通過 Xml 控件來使用示例 XSL 轉(zhuǎn)換文件顯示示例 XML 文件。請確保示例 XML 文件名為 People.xml,示例 XSL 轉(zhuǎn)換文件名為 Peopletable.xsl。

<html>
<body>
   <h3>Xml Example</h3>
   <form runat="server">
      <asp:Xml id="xml1"
           DocumentSource="people.xml"
           TransformSource="peopletable.xsl"
           runat="server" />
   </form>
</body>
</html>

下面的示例演示如何從示例 XML 和 XSL 轉(zhuǎn)換文件創(chuàng)建 XmlDocument 和 XslTransform 對象。然后,Xml 控件使用這兩個(gè)對象顯示 XML 文檔。請確保示例 XML 文件名為 People.xml,示例 XSL 轉(zhuǎn)換文件名為 Peopletable.xsl。

Visual Basic

<%@ Page Language="VB" AutoEventWireup="True" %>
<%@ Import Namespace="System.Xml" %>
<%@ Import Namespace="System.Xml.Xsl" %>
<html>
   <script runat="server">
      Sub Page_Load(sender As Object, e As EventArgs)
         Dim doc As XmlDocument = New XmlDocument()
         doc.Load(Server.MapPath("people.xml"))
         Dim trans As XslTransform = new XslTransform()
         trans.Load(Server.MapPath("peopletable.xsl"))
         xml1.Document = doc
         xml1.Transform = trans
      End Sub
</script>
<body>
   <h3>Xml Example</h3>
   <form runat="server">
      <asp:Xml id="xml1" runat="server" />
   </form>
</body>
</html>

C#

<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Xml" %>
<%@ Import Namespace="System.Xml.Xsl" %>
<html>
   <script runat="server">
      void Page_Load(Object sender, EventArgs e)
      {
         XmlDocument doc = new XmlDocument();
         doc.Load(Server.MapPath("people.xml"));
         XslTransform trans = new XslTransform();
         trans.Load(Server.MapPath("peopletable.xsl"));

         xml1.Document = doc;
         xml1.Transform = trans;
      }
   </script>
<body>
   <h3>Xml Example</h3>
      <form runat="server">
         <asp:Xml id="xml1" runat="server" />
      </form>
</body>
</html>