3.11 AdRotator控件 AdRotator 控件提供一种在 Web页面上显示广告的方法,它可以显示你提供的 .gif 文件或其他图形图像。当用户单击广告时,系统会将它们重定向到指定的目标 URL。同时,该控件会从你使用数据源(通常是 XML 文件或数据库表)提供的广告列表中自动读取广告信息,如图形文件名和目标URL。 在广告显示中,AdRotator 控件会随机选择广告,每次刷新页面时都将更改显示的广告。广告可以加权以控制广告条的优先级别,这可以使某些广告的显示频率比其他广告高。当然,也能编写在广告间循环的自定义逻辑来控制广告的显示效果。下面的示例演示了AdRotator 控件从一个外部的XML文件中随机选择图片广告进行显示。 在创建AdRotator 控件之前,必须先准备好广告的数据源,即定义好一个用于存储广告信息的XML文档文件。现在,首先在App_Data文件夹里面定义了一个名为Ad.xml的文件,如下所示: - <?xml version="1.0" encoding="utf-8" ?>
- <Advertisements xmlns="
- http://schemas.microsoft.com/AspNet/AdRotator-Schedule-File">
- <Ad>
- <ImageUrl>~/Images/1.gif</ImageUrl>
- <NavigateUrl>http://www.baidu.com</NavigateUrl>
- <AlternateText>去Baidu搜索</AlternateText>
- <Impressions>10</Impressions>
- <Keyword>Baidu</Keyword>
- </Ad>
- <Ad>
- <ImageUrl>~/Images/2.gif</ImageUrl>
- <NavigateUrl>http://www.google.cn</NavigateUrl>
- <AlternateText>去Google搜索</AlternateText>
- <Impressions>20</Impressions>
- <Keyword>Google</Keyword>
- </Ad>
- </Advertisements>
如上面的Ad.xml文件所示,每个<Ad>元素都有规定的格式与节点元素,它们用于配置链接、图片和频率等,如表3-9所示。因此,不能够定义它不存在的或者不能够识别的元素。 表3-9 <Ad>元素描述 定义好Ad.xml文件之后,只需要将该XML文件赋给AdRotator 控件的AdvertisementFile属性,如下所示:
- <asp:AdRotator ID="AdRotator1" runat="server"
- BorderWidth="0px" AdvertisementFile="~/App_Data/Ad.xml"
- Target="_blank" />
运行程序,就可以看见如图3-9所示的结果。当刷新此页面时,会看到每次都有一个随机的新广告图片出现。 当然,除了可以为广告信息创建一个 XML 文件以外,还可以将广告信息存储到一个数据库表中。该表需要一种 AdRotator 控件能够读取的特定架构,如表3-9所示。可以将广告信息存储在任何类型的数据库中,只要这种数据库有对应的数据源控件即可。 最后,还可以响应AdRotator控件的OnAd Created事件。该事件发生在该网页被创建且一个图片从文件中被随机选中时。这个事件提供图片的信息,便于你定制网页的其他部分。
|