The AdRotator control selects ads randomly, changing the displayed ad each time the page is refreshed. Ads can be weighted to control the priority level of banners, making it possible to have certain ads display more often than others. You can also write custom logic that cycles through the ads.
Ad information can come from a variety of sources:
- An XML file You can store ad information in an XML file that contains references to ad banners and their associated properties.
- Any data source control, such as the SqlDataSource control For example, you can store ad information in a database, and can use a SqlDataSource control to retrieve ad information, and then bind the AdRotator control to the data source control.
- Custom logic You can create a handler for the AdCreated event and select an ad in the event.
Using an XML file as an AdRotator SourceThe AdRotator control has the following attributes that you can specify in the XML file.
AdRotator attributes
- ImageUrl The URL of the image to display.
- NavigateUrl The URL of the page to go to when the AdRotator control is clicked.
- AlternateText The text to display if the image is unavailable.
- Keyword The category of the ad, which can be used to filter for specific ads.
- Impressions A numeric value (a weighting number) that indicates the likelihood of how often the ad is displayed. The total of all impressions values in the XML file cannot exceed 2,048,000,000 – 1.
- Height The height of the ad in pixels. This value overrides the default height setting for the AdRotator control.
- Width The width of the ad in pixels. This value overrides the default width setting for the AdRotator control.
To create an ad list as an XML file
- Create a new XML file in your website’s App_Data or _private folder. For extra security, give the file a file name extension other than .xml, such as .ads.
- Add the following XML elements to the file:
<?xml version=”1.0″ encoding=”utf-8″ ?>
-
<Advertisements xmlns=”http://schemas.microsoft.com/AspNet/AdRotator-Schedule-File”>
-
</Advertisements>
- Create an Ad element inside the Advertisements element for each ad that you want to include in the ad list, and then save the file. A sample file might look like the following:
<?xml version="1.0" encoding="utf-8" ?>
-
<Advertisements xmlns="http://schemas.microsoft.com/AspNet/AdRotator-Schedule-File">
-
<Ad>
-
<ImageUrl>~/images/Contoso_ad.gif</ImageUrl>
-
<NavigateUrl>http://www.contoso-ltd.com</NavigateUrl>
-
<AlternateText>Ad for Contoso, Ltd. website</AlternateText>
-
<Impressions>100</Impressions>
-
</Ad>
-
<Ad>
-
<ImageUrl>~/images/Aspnet_ad.gif</ImageUrl>
-
<NavigateUrl>http://www.asp.net</NavigateUrl>
-
<AlternateText>Ad for ASP.NET website</AlternateText>
-
<Impressions>50</Impressions>
-
</Ad>
-
</Advertisements>
To display ads from the XML file
- In Design view, from the Toolbox, drag an AdRotator control to your the ASP.NET web page at the location where you want the ads to display.The Common AdRotator Tasks menu appears.
- Do one of the following:
- In the Choose Data Source drop-down box, select the XML file you created.
- In the Tag Properties task pane, set the AdRotator control’s AdvertisementFile property to the path of the XML file that you created.
Using a Database as an AdRotator SourceYou can store ad information in any type of database, as long as you have the corresponding data source control for that database.
To create the database table for ads
- If you do not already have a database table that contains the ad information, create a table with the following schema. All columns except ID are optional.
Note:Data types are provided as SQL Server types. If you are using a different database, substitute the appropriate corresponding type. Column name Data type Description ID int The primary key. This column can have any name. ImageUrl nvarchar(length) The relative or absolute URL of the image to display for the ad. NavigateUrl nvarchar(length) The target URL for the ad. If you do not provide a value, the ad is not a hyperlink. AlternateText nvarchar(length) The text displayed if the image cannot be found. In some browsers, the text is displayed as a ToolTip. Alternate text is also used for accessibility so that users who cannot see the graphic can hear its description read out loud. Keyword nvarchar(length) A category for the ad on which the page can filter. Impressions int(4) A number that indicates the likelihood of how often the ad is displayed. The larger the number, the more often the ad will be displayed. The total of all impressions values in the XML file may not exceed 2,048,000,000 – 1. Width int(4) The width of the image in pixels. Height int(4) The height of the image in pixels. - If you have an existing database table with ad information in it, set the following properties of the AdRotator control to map your database table schema to the fields required by the control:
- AlternateTextField
- ImageUrlField
- NavigateUrlField
- Insert new records into the table with ad information.
To display ads from the database
- In Design view, from the Toolbox, drag a data source control, such as a SqlDataSource control or a AccessDataSource control, onto the ASP.NET web page.
- Configure the data source control with a connection string and query to select all of the records from the database table you created earlier.
- Place an AdRotator control on the page where you want the ads to appear.
- Set the AdRotator control’s DataSourceID property to the ID of the data source control that you created in step 1.
When the page runs, the AdRotator control will query the database for the ads and select one to display.
Filtering Ads by KeywordIf a filter is specified, then one of the following two situations can result:
- If the AdRotator control can find ads with the matching keyword, an ad with the keyword is displayed.
- If no match for the keyword exists, then the AdRotator control will display a blank image in the browser.
Tracking Ad Response
Caching Ads