nietige Application_BeginRequest (de afzender van Objecten, EventArgs e)
{
RewriteUrl ();
}
openbare DataTable GetVanityLinks ()
{
De dataset dstVanityLinks = verklaart nietig;
DataTable dtblVanityLinks = verklaart nietig;
//dtblVanityLinks = Context.Cache („vanitylinks“);
als (dtblVanityLinks ongeldige ==)
{
dstVanityLinks = nieuwe Dataset ();
dstVanityLinks.ReadXml (Server.MapPath („VanityURLRedirects.xml“));
dtblVanityLinks = dstVanityLinks.Tables [0];
Context.Cache.Insert („vanitylinks“, dtblVanityLinks, nieuwe CacheDependency (Server.MapPath („VanityURLRedirects.xml“)));
}
terugkeer dtblVanityLinks;
}
openbare nietige RewriteUrl ()
{
DataTable dtblVanityLinks = verklaart nietig;
het koord strThisUrl = verklaart nietig;
het koord strSelect = verklaart nietig;
DataRow [] arrMatches = verklaart nietig;
het koord strRedirectLink = verklaart nietig;
dtblVanityLinks = GetVanityLinks ();
strThisUrl = Request.Path.ToLower ();
als (Request.ApplicationPath! = „/“)
{
strThisUrl = strThisUrl.Remove (0, Request.ApplicationPath.Length);
}
strSelect = „vanitylink = „“ + strThisUrl + „“ „;
arrMatches = dtblVanityLinks.Select (strSelect, „vanitylink“);
als (arrMatches.Length > 0)
{
strRedirectLink = arrMatches [0] [„redirectlink“] .ToString (); ;
strRedirectLink = Request.ApplicationPath + strRedirectLink;
Context.RewritePath (strRedirectLink);
}
}
|