Элемент управления Adrotator произвольно выбирает баненную графику из списка. Список этих реклам можно поместить в XML- файл. Допустим мы хотим периодически менять вывод рекламы в определенном контейнере div html разметки. Для демонстрации баннера- рекламы воспользуюсь созданными
курсами Сани Гудка в качестве ссылки на них. Вот собственно определение файла XML:
<advertisements>
<Ad>
<ImageUrl>
1.gif
</ImageUrl>
<NavigateUrl>
http://www.winforms.ru/
</NavigateUrl>
<AlternateText>
Author - Aleksandr Gudok
</AlternateText>
<Impression>
20
</Impression>
<Keyword>
c#
</Keyword>
</Ad>
<Ad >
<ImageUrl>
2.gif
</ImageUrl>
<NavigateUrl>
http://www.winforms.ru/ADONETSQL.aspx/
</NavigateUrl>
<AlternateText>
Author - Aleksandr Gudok
</AlternateText>
<Impression>
40
</Impression>
<Keyword>
ADO.NET
</Keyword>
</Ad >
<Ad>
<ImageUrl>
3.gif
</ImageUrl>
<NavigateUrl>
http://winforms.ru/ASPNET.aspx
</NavigateUrl>
<AlternateText>
Author - Aleksandr Gudok
</AlternateText>
<Impression>
60
</Impression>
<Keyword>
ASP.NET
</Keyword>
</Ad>
</advertisements>
Видим, что каждый элемент Ad имеет набор важных свойств, которые не выдуманы, а те, которые понимает элемент управления Adrotator. Эти свойства определяют ссылку, картинку и частоту появления рекламы. Для последнего курса по ASP.NET в свойстве Impression я указал большую
частоту, чем для предыдущих курсов, по сколку курс новый. Вот перечень свойств, которые понимает элемент AdRotator:
- ImageUrl – изображение.
- NavigateUrl – Ссылка на страницу. AlternateText – текст, который будет выведен вместо изображения, если по каким-то причинам изображение не загружено.
- Impression – частота показа рекламы.
- Keyword – Ключевое слово, определяющее группу объявлений.
Файл XML определили, сохраним под именем "skillcoding.xml". Теперь переходим на страничку (у меня она называется Banner.aspx) и пишем:
<div>
<asp:AdRotator
ID="AdRotator1"
runat="server"
DataSourceID="XmlDataSource1"
OnAdCreated="AdRotator1_AdCreated"
Target="_blank" />
<asp:XmlDataSource
ID="XmlDataSource1"
runat="server"
DataFile="~/skillcodig.xml">
</asp:XmlDataSource>
<br /><br /><br />
<asp:Label ID="lbl1"
runat="server"
BackColor="White"
BorderColor="#FF9900"
Font-Names="Verdana">
</asp:Label>
</div >
Видим, что в
XmlDataSource указан файл XML, который мы и создали, после чего идет привязка элемента AdRotator к XmlDataSource1. Элемент лейбл это дополнительный елемент управления, чтоб вывести имя автора курсов. Теперь в Banner.aspx.cs пишем:
protected void AdRotator1_AdCreated
(object sender, AdCreatedEventArgs e)
{
AdRotator1.NavigateUrlField = e.NavigateUrl;
lbl1.Text = e.AlternateText;
}
Для того чтоб проще было, перейдите в дизайнер формы и кликните дважды по элементу управления
AdRotator, и студия за Вас сгенерирует заглушку кода, которую надо будет лишь дополнить. Как видим, в обработчике Created элемента AdRotator
указана ссылка перенаправления и текстовка, которая присвоится лейблу. Запускаем на выполнения:
Обновите пару рас страничку, и Вы почувствуете частоту показа реклам. Если кликнуть на одной из реклам, будет перенаправления на страничку, где Саша дал полное описание курса.