ASP.NET - AdRotator 广告轮播器控件

AdRotator 控件从列表中随机选择横幅图形,该列表在外部 XML 计划文件中指定。 该外部 XML 计划文件称为广告文件。

AdRotator 控件允许您分别在AdvertisementFile 和Target 属性中指定广告文件和链接应遵循的窗口类型。

添加 AdRotator 的基本语法如下:

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

在详细了解 AdRotator 控件及其属性之前,让我们先了解一下广告文件的构造。

广告文件

广告文件是一个XML文件,其中包含要显示的广告的信息。

可扩展标记语言 (XML) 是文本文档标记的 W3C 标准。 它是一种基于文本的标记语言,使您能够使用有意义的标签以结构化格式存储数据。 术语"可扩展"意味着您可以通过为应用程序定义有意义的标签来扩展描述文档的能力。

XML 本身不像 HTML 那样是一种语言,而是一组用于创建新标记语言的规则。 它是一种元标记语言。 它允许开发人员创建用于特殊用途的自定义标签集。 它构建、存储和传输信息。

以下是 XML 文件的示例:

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

与所有 XML 文件一样,广告文件需要是一个结构化文本文件,具有明确定义的标记来描述数据。 广告文件中常用的标准 XML 元素如下:

元素 描述
Advertisements 附上广告文件。
Ad 描绘单独的广告。
ImageUrl 将显示的图像的路径。
NavigateUrl 用户点击广告时将访问的链接。
AlternateText 无法显示时将显示的文字而不是图片。
Keyword 标识一组广告的关键字。 这用于过滤。
Impressions 表示广告出现频率的数字。
Height 要显示的图像的高度。
Width 要显示的图像的宽度。

除了这些标签之外,还可以包含具有自定义属性的自定义标签。 以下代码说明了广告文件 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 提供替代文本的字段的元素名称。 默认值为AlternateText。
DataMember 不使用广告文件时要绑定的具体数据列表名称。
DataSource 控制从何处检索数据。
DataSourceID 从中检索数据的控件的 ID。
Font 指定与广告横幅控件关联的字体属性。
ImageUrlField 提供图像 URL 的字段的元素名称。 默认值为 ImageUrl。
KeywordFilter 仅用于显示基于关键字的广告。
NavigateUrlField 提供要导航到的 URL 的字段的元素名称。 默认值为 NavigateUrl。
Target 显示链接页面内容的浏览器窗口或框架。
UniqueID 获取 AdRotator 控件的唯一的、分层限定的标识符。

以下是 AdRotator 类的重要事件:

事件 描述
AdCreated 在创建控件之后、渲染页面之前,每次到服务器的往返都会引发一次
DataBinding 当服务器控件绑定到数据源时发生。
DataBound 在服务器控件绑定到数据源后发生。
Disposed 当服务器控件从内存中释放时发生,这是请求 ASP.NET 页面时服务器控件生命周期的最后阶段
Init 在服务器控件初始化时发生,这是其生命周期的第一步。
Load 当服务器控件加载到 Page 对象中时发生。
PreRender 在加载 Control 对象之后但呈现之前发生。
Unload 从内存中卸载服务器控件时发生。

使用 AdRotator 控件

创建一个新网页并在其上放置一个 AdRotator 控件。

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

ads.xml 文件和图像文件应位于网站的根目录中。

尝试执行上述应用程序,并观察每次重新加载页面时,广告都会发生变化。