📄 advertisement.cs
字号:
using System;
using System.Web;
using System.Data;
using System.Xml;
using Wrox.WebModules.Business;
namespace Wrox.WebModules.AdsManager.Business
{
public class Advertisement: Wrox.WebModules.Business.BizObject
{
private string imageUrl;
private string navigateUrl;
private string alternateText;
private string keyword;
private int impressions;
private string trueNavigateUrl;
private int advertisementId;
private int companyId;
private bool isActive;
private string description;
public Advertisement()
{
// constructor used when creating an empty instance.
}
public Advertisement(int advertId)
{
HttpContext context = HttpContext.Current;
Configuration.ModuleSettings settings =
Configuration.ModuleConfig.GetSettings();
string xPathFind = "//Ad[NavigateUrl=\"" + settings.PassThroughPage + "?AD=" + advertId.ToString() +"\"]";
Data.Advertisement ad = new Data.Advertisement(settings.ConnectionString);
DataRow advertData = ad.RetrieveAd(advertId);
advertisementId = advertId;
description = (string)advertData["Description"];
trueNavigateUrl = (string)advertData["TrueNavigateUrl"];
isActive = (bool)advertData["Active"];
companyId = (int)advertData["CompanyID"];
// now fill up the rest of the properties with information from the XML file.
XmlDocument adDom = new XmlDocument();
adDom.Load( context.Server.MapPath( settings.RotatorXmlFile ) );
XmlElement adCurrent = (XmlElement)adDom.DocumentElement.SelectSingleNode( xPathFind );
if (adCurrent == null)
throw new InvalidOperationException("Advertisement Selected Does not Exist in Rotator XML Source");
imageUrl = adCurrent.SelectSingleNode("ImageUrl").InnerText;
navigateUrl = adCurrent.SelectSingleNode("NavigateUrl").InnerText;
alternateText = adCurrent.SelectSingleNode("AlternateText").InnerText;
keyword = adCurrent.SelectSingleNode("Keyword").InnerText;
impressions = Convert.ToInt32(adCurrent.SelectSingleNode("Impressions").InnerText);
}
public void RecordImpression()
{
Configuration.ModuleSettings settings = Configuration.ModuleConfig.GetSettings();
Data.Advertisement currentAd = new Data.Advertisement(settings.ConnectionString);
currentAd.RecordImpression( advertisementId );
}
public void RecordClick()
{
Configuration.ModuleSettings settings = Configuration.ModuleConfig.GetSettings();
Data.Advertisement currentAd = new Data.Advertisement(settings.ConnectionString);
currentAd.RecordClick( advertisementId );
}
public void Create()
{
HttpContext context = HttpContext.Current;
Configuration.ModuleSettings settings = Configuration.ModuleConfig.GetSettings();
Data.Advertisement newAd = new Data.Advertisement(settings.ConnectionString);
newAd.Create( imageUrl, trueNavigateUrl, alternateText, keyword, companyId, description,
context.Server.MapPath( settings.RotatorXmlFile ) );
}
public void Update()
{
HttpContext context = HttpContext.Current;
Configuration.ModuleSettings settings = Configuration.ModuleConfig.GetSettings();
Data.Advertisement currentAd = new Data.Advertisement(settings.ConnectionString);
currentAd.Update( advertisementId, imageUrl, trueNavigateUrl, alternateText, keyword, description,
impressions, isActive, context.Server.MapPath( settings.RotatorXmlFile) );
}
#region Publicly Exposed Properties
public int Impressions
{
get
{
return impressions;
}
set
{
impressions = value;
}
}
public string ImageUrl
{
get
{
return imageUrl;
}
set
{
imageUrl = value;
}
}
public string NavigateUrl
{
get
{
return navigateUrl;
}
set
{
navigateUrl = value;
}
}
public string TrueNavigateUrl
{
get
{
return trueNavigateUrl;
}
set
{
trueNavigateUrl = value;
}
}
public string AlternateText
{
get
{
return alternateText;
}
set
{
alternateText = value;
}
}
public string KeyWord
{
get
{
return keyword;
}
set
{
keyword = value;
}
}
public int AdvertisementID
{
get
{
return advertisementId;
}
set
{
advertisementId = value;
}
}
public bool IsActive
{
get
{
return isActive;
}
set
{
isActive = value;
}
}
public string Description
{
get
{
return description;
}
set
{
description = value;
}
}
public int CompanyID
{
get
{
return companyId;
}
set
{
companyId = value;
}
}
#endregion
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -