创建广告列表 有了广告图形之后,必须立即创建 AdRotator 控件能够读取的广告列表。列表的形式为 xml 文件。
创建广告的 XML 文件 1. 在解决方案资源管理器中,右击 App_Data,然后单击“添加新项”。
说明:
将 XML 文件放入 App_Data 文件夹时,XML 文件就自动具有了允许 ASP.NET 在运行时对其进行读取的相应权限。将 XML 文件放入 App_Data 文件夹有助于防止该文件在浏览器中被查看,因为 App_Data 文件夹被标记为不可浏览。
2. 在“Visual Studio 已安装的模板”之下单击“XML 文件”。
3. 在“名称”框中键入“Sample.ads”。
说明:
使用 .ads 扩展名。
4. 单击“添加”。
创建一个仅包含 XML 指令的新 XML 文件。
5. 将下面的 XML 复制到该文件中,并覆盖 XML 指令。
<?xml version="1.0" encoding="utf-8" ?><Advertisements> <Ad> <ImageUrl>~/images/Contoso_ad.gif</ImageUrl> <NavigateUrl>http://www.contoso.com</NavigateUrl> <AlternateText>Ad for Contoso.com</AlternateText> </Ad> <Ad> <ImageUrl>~/images/ASPNET_ad.gif</ImageUrl> <NavigateUrl>http://www.asp.net</NavigateUrl> <AlternateText>Ad for ASP.NET Web site</AlternateText> </Ad></Advertisements>说明:
如果图形文件具有不同的文件名,则相应地更改 <ImageUrl> 元素中的名称。
此 XML 文件包含两个广告的 <Ad> 元素,这两个广告对应于创建的两个图形文件。在实际应用程序中,<NavigateUrl> 元素中的 URL 引用的是广告的网站。
说明:
定义广告还可使用其他元素。
6. 保存文件,然后将其关闭。
在页上显示广告 现在配置网页以显示已创建的广告。在下面的过程中,您会将 AdRotator 控件绑定到 XmlDataSource 控件。但是,当使用静态 XML 文件时,则不需要数据源控件,原因是可以用 AdRotator 控件的 AdvertisementFile 属性直接设置 XML 文件。
然后,创建另一个 XML 文件来存储广告计数器信息。在成品网站中,不应使用 XML 文件来跟踪广告单击数,因为 XML 文件不支持大流量。但是,为了实现本演练的目的,方便起见将使用 XML 文件,这样就不必配置数据库访问。另外,在成品应用程序中,可能需要更为复杂的单击跟踪,如确保跟踪特定访问者、跟踪单击的时间和日期信息等。尽管如此,无论选择什么数据跟踪方式,使用重定向页处理单击的总体策略都是一样的。
最后,将创建重定向页,您将在该页中累计不同广告的计数器,然后再次重定向到要显示的广告的目标页。
将广告重定向到跟踪页 1. 打开 Sample.ads 文件。
2. 设置“NavigateUrl”以包含下面的内容:
· 重定向页的名称 (AdRedirector.aspx)。
· 每个广告的标识符。
· 广告最终指向的页。
下面的代码清单演示用指定 AdRedirector.aspx 页的 URL 更新的 Sample.ads XML 文件。广告标识符和目标页被指定为查询字符串。
说明:
由于“and”符 (&) 在 XML 中是一个保留字符,因而查询字符串包含的将是实体引用 & 。
<?xml version="1.0" encoding="utf-8" ?><Advertisements> <Ad> <ImageUrl>~/images/Contoso_ad.gif</ImageUrl> <NavigateUrl>AdRedirector.aspx?ad=Widgets&target=http://www.contoso.com/widgets/</NavigateUrl> <AlternateText>Ad for Contoso.com</AlternateText> </Ad> <Ad> <ImageUrl>~/images/ASPNET_ad.gif</ImageUrl> <NavigateUrl>AdRedirector.aspx?ad=ASPNET&target=http://www.asp.net</NavigateUrl> <AlternateText>Ad for ASP.NET Web site</AlternateText> </Ad></Advertisements>3. 保存 Sample.ads 文件,然后将其关闭。
下一步,创建 XML 文件,该文件存储广告单击的计数器信息。在成品网站中不需要此步骤,因为信息会写入数据库。本演练中使用 XML 文件简化了跟踪广告响应所需的步骤。
创建用于跟踪广告响应的 XML 文件 1. 在解决方案资源管理器中,右击“App_Data”文件夹,然后单击“添加新项”。
如果在前一过程中创建查询字符串时在 Sample.ads 文件中将不同的 ID 指定给了广告,请确保 AdResponses.xml 文件中的 ID 与这些 ID 匹配。
5. 保存文件,然后将其关闭。
说明:
ASP.NET 是否具有 XML 文件的写入权限取决于您所使用的 Web 服务器。在本演练中,您将使用 ASP.NET Development Server(包括在 Visual Web Developer 中,并对 XML 文件具有写访问权)。如果您使用 Microsoft Internet 信息服务 (IIS),由于 IIS Web 服务器辅助进程可能对 XML 文件没有写访问权,因此您必须显式设置该写入权限。