ASP.NET 廣告輪轉(zhuǎn)器

2022-06-27 15:39 更新

廣告輪轉(zhuǎn)器

廣告輪轉(zhuǎn)控制器從一個(gè)列表里隨機(jī)選擇在外部 XML 定時(shí)文件中指定的橫幅圖像。這個(gè)外部 XML 定時(shí)文件被叫做廣告文件。

廣告輪轉(zhuǎn)控件允許你指定一個(gè)廣告文件和窗口的類型,鏈接應(yīng)該分別遵循 AdvertisementFile 和 Target 的屬性。

添加 AdRotator 的基本語法如下:

<asp:AdRotator  runat = "server" AdvertisementFile = "adfile.xml"  Target =  "_blank" />

在了解 AdRotator 控件以及它的屬性之前,讓我們先來看看廣告文件的構(gòu)成。

廣告文件

廣告文件是一種 XML 文件,它包括了廣告所要被顯示的信息。

可擴(kuò)展標(biāo)記語言(XML)是一種 W3C 的標(biāo)準(zhǔn)文本文檔標(biāo)記語言。它是一個(gè)基于文本的標(biāo)記語言,它使您可以通過使用有意義的標(biāo)簽來讓數(shù)據(jù)存儲(chǔ)在結(jié)構(gòu)化格式中。術(shù)語 'extensible' 意味著可以擴(kuò)展功能,通過給應(yīng)用程序定義有意義的標(biāo)簽來描述文檔。

XML 本身不是一種語言,如 HTML ,而是一組用于創(chuàng)建新的標(biāo)記語言的規(guī)則。它是一個(gè)元標(biāo)記語言。它允許開發(fā)人員創(chuàng)建自定義標(biāo)記集作特殊用途。它構(gòu)建,存儲(chǔ)并傳輸?shù)男畔ⅰ?/p>

下面是 XML 文件的一個(gè)例子:

<BOOK>
   <NAME> Learn XML </NAME>
   <AUTHOR> Samuel Peterson </AUTHOR>
   <PUBLISHER> NSS Publications </PUBLISHER>
   <PRICE> $30.00</PRICE>
</BOOK>

像所有的 XML 文件,該廣告文件需要被具有良好定義并標(biāo)記的結(jié)構(gòu)化文本文件來描繪數(shù)據(jù)。這里也有一些在廣告文件中常用的標(biāo)準(zhǔn) XML 元素:

元素描述
Advertisements包圍廣告文件。
Ad界定獨(dú)立的廣告。
ImageUrl將要顯示的圖像的路徑。
NavigateUrl當(dāng)用戶點(diǎn)擊該廣告時(shí)出現(xiàn)的鏈接。
AlternateText如果圖像不能被顯示,則會(huì)顯示文本。
Keyword關(guān)鍵字用來識(shí)別一組廣告,用于過濾。
Impressions該數(shù)字顯示廣告出現(xiàn)的頻率。
Height顯示圖像的高度。
Width顯示圖像的寬度。

除了這些標(biāo)簽,帶有一般屬性的習(xí)慣性的標(biāo)簽也可以被包含進(jìn)去。下面的代碼演示了一個(gè)廣告文件,ads.xml:

<Advertisements>
   <Ad>
      <ImageUrl>rose1.jpg</ImageUrl>
      <NavigateUrl>http://www.1800flowers.com</NavigateUrl>
      <AlternateText>
         Order flowers, roses, gifts and more
      </AlternateText>
      <Impressions>20</Impressions>
      <Keyword>flowers</Keyword>
   </Ad>

   <Ad>
      <ImageUrl>rose2.jpg</ImageUrl>
      <NavigateUrl>http://www.babybouquets.com.au</NavigateUrl>
      <AlternateText>Order roses and flowers</AlternateText>
      <Impressions>20</Impressions>
      <Keyword>gifts</Keyword>
   </Ad>

   <Ad>
      <ImageUrl>rose3.jpg</ImageUrl>
      <NavigateUrl>http://www.flowers2moscow.com</NavigateUrl>
      <AlternateText>Send flowers to Russia</AlternateText>
      <Impressions>20</Impressions>
      <Keyword>russia</Keyword>
   </Ad>

   <Ad>
      <ImageUrl>rose4.jpg</ImageUrl>
      <NavigateUrl>http://www.edibleblooms.com</NavigateUrl>
      <AlternateText>Edible Blooms</AlternateText>
      <Impressions>20</Impressions>
      <Keyword>gifts</Keyword>
   </Ad>
</Advertisements>

AdRotator 類的屬性和事件

AdRotator 類是從 WebControl 類中派生的并且繼承其屬性。除了這些屬性,AdRotator 類還具有以下屬性:

屬性描述
AdvertisementFile廣告文件的路徑。
AlternateTextFeild提供替代文本的域的元素名稱。默認(rèn)值是 Alternate Text。
DataMember當(dāng)不使用廣告文件時(shí),要綁定的數(shù)據(jù)的特定列表的名稱。
DataSource控制檢索數(shù)據(jù)。
DataSourceID檢索數(shù)據(jù)的控制 ID。
Font指定與廣告橫幅控件相關(guān)聯(lián)的字體屬性。
ImageUrlField提供 URL 圖像的域的名稱。默認(rèn)值是 ImageUrl。
KeywordFilter只顯示基于關(guān)鍵字的廣告。
NavigateUrlField提供要導(dǎo)航到的 URL 的域的元素名稱。默認(rèn)值是 NavigateUrl。
Target顯示鏈接的網(wǎng)頁的內(nèi)容的瀏覽器窗口或框架。
UniqueID獲得 AdRotator 控件的唯一的、以分層形式限定的標(biāo)識(shí)符。

以下是的 AdRotator 類的非常重要的事件:

事件描述
AdCreated每次往返服務(wù)器創(chuàng)建控件后,但是在頁面渲染之前被觸發(fā)。
DataBinding當(dāng)服務(wù)器控件綁定到數(shù)據(jù)源時(shí)觸發(fā)。
DataBound在服務(wù)器控件綁定到數(shù)據(jù)源之后發(fā)生。
Disposed當(dāng)服務(wù)器控件從內(nèi)存釋放,在服務(wù)器控件生命周期的最后一個(gè)階段請(qǐng)求 ASP.NET 頁時(shí)觸發(fā)。
Init當(dāng)服務(wù)器控制被初始化時(shí)觸發(fā),其生命周期中的第一個(gè)步驟出現(xiàn)。
Load當(dāng)服務(wù)器控件加載到 Page 對(duì)象中時(shí)觸發(fā)。
PreRender加載 Control 對(duì)象之后,但在此之前呈現(xiàn)觸發(fā)。
Unload當(dāng)服務(wù)器控件從內(nèi)存中卸載時(shí)觸發(fā)。

使用 AdRotator 控件

創(chuàng)建一個(gè)新的網(wǎng)頁,并在其上放置一個(gè) AdRotator 控件。

<form id="form1" runat="server">
   <div>
      <asp:AdRotator ID="AdRotator1" runat="server" AdvertisementFile  ="~/ads.xml" onadcreated="AdRotator1_AdCreated" />
   </div>
</form>

該 ads.xml 文件和圖像文件應(yīng)該位于網(wǎng)站的根目錄。

試著執(zhí)行上述應(yīng)用程序,并觀察到頁面每次重載時(shí),廣告都被改變。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)