The AdRotator web server control November 21, 2008Posted by fofo in asp.net 2.0, C#, Sql Server 2005, VB 2005.
Tags: adrotator control, asp.net 2.0, C#
I had some requests to write a post about the Adrotator control and how it can be used to serve up random banners in our web site.I thought that was a good idea and a great excuse to break away from the LINQ stuff…
I will demonstrate the use of this control with an example (C# version).I will use an XML file that will serve as the source for my banners.
The AdRotator control of course was included in the previous versions of Visual Studio and framework version, ASP.Net 2.0 to be exact.
1) Launch Visual Studio
2) Create a new project. More specifically choose C#, and from the templates ASP.Net Web application
3) Give a name to your project
4) From your toolbox just drag and drop an AdRotator Control in the Default.aspx page
5) Click on your project from the Solution explorer and create an Images folder
6) Place your images (i am going to use images of mine) in the folder above
7) Add a new item to your project. It will be an XML file. Name it “banner.xml”. It is a good idea to place it in the App_Data special folder that is already created in your project structure.
8) Copy and paste the following XML code inside the “bannel.xml” file.
<?xml version=”1.0″ encoding=”utf-8″ ?>
<AlternateText>ASP.NET AJAX is a free framework for quickly creating efficient and interactive Web applications that work across all popular browsers</AlternateText>
<AlternateText>ASP.NET is a free technology that allows anyone to create a modern web site</AlternateText>
<AlternateText>The .NET Framework is Microsoft’s comprehensive and consistent programming model for building applications </AlternateText>
If you want to find more about the attributes of the control and how we include them in the .xml file, have a a look here
Make sure you change the name of the images in the <ImageUrl> attribute to reflect the images you placed in the Images folder in your project.
9) Now select the AdRotaror control and from the properties window in VS select the property called AdvertisementFile .Click on the ellipsis button and navigate until you find the “banners.xml” file.
That is it folks!!! Congrats. you have your dynamic page displaying your feature banners.
If you want to enable some sort of filtering in your ads, you can do so.
If you place a DropDownlist control in your default.aspx page and add as items these names
- asp.net ajax
Enable AutoPostBack property for this control.By clicking on this control in the Default.aspx.cs,
you will be presented with the event handling routine for the standard event(SelectedIndexChanged).
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
AdRotator1.KeywordFilter = DropDownList1.SelectedItem.Value;
We set the property Keywordfilter of the AdRotator control to the value of the selected item from the list, thus selecting only the banners that match the keyword.
Run your application and choose different items from the dropdownlist . In my example there are 3 banners with 3 different keywords so only one banner will be shown every time you choose a different item.
I would like to show you how you can retrieve the ads if we have a Sql Server database as our source file.
1) First we need to create the database . Select the App_Data special folder and add a new item, a Sql Server Database. Call it banners.mdf.We need to create a table and we will call it ads
The definition for this table, for fields and data types could be
Field names Data type
id -> int -> primary key and identity column
ImageUrl -> nvarchar(250) -> not null
NavigateUrl -> nvarchar(250) -> not null
AlternateText -> nvarchar(250) -> not null
keyword -> nvarchar(50) -> not null
impressions -> int -> not null
Populate the table with the following data (for 3 rows)
ImageUrl = ~/images/asp-logo.png
AlternateText=ASP.NET is a free technology that allows anyone to create a modern web site
ImageUrl = ~/images/ajax-logo.gif
AlternateText=ASP.NET AJAX is a free framework for quickly creating efficient and interactive Web applications that work across all popular browsers
ImageUrl = ~/images/NET-logo.png
AlternateText=The .NET Framework is Microsoft’s comprehensive and consistent programming model for building applications
Now create a new .aspx page and make it the Start page.Name it as you want.
Place a new AdRotator control in the newly created page.
Now we must have a datasource control that points to the database we created and tie this datasource control with the rotator control.
Click on the little arrow in the rotator control and choose New Data Source, choose database from the window and then from the Configure DataSource window, select the banner database and click Next.
Then select the ads table and select all the fields from the table. Test the query and click Finish.
Run your application and see the ads to apper now from the database.
You can email me if you want the source code or leave a comment.
Hope it helps!!!!