protected virtual string NormalizePagePath(string pagePath)
{
if (pagePath.StartsWith("~/", StringComparison.OrdinalIgnoreCase)) {
pagePath = pagePath.Substring(1);
}
else if (!pagePath.StartsWith("/", StringComparison.OrdinalIgnoreCase)) {
pagePath = "/" + pagePath;
}
if (pagePath.EndsWith("/", StringComparison.OrdinalIgnoreCase)) {
pagePath = pagePath.Substring(0, pagePath.Length - 1);
}
if (String.IsNullOrEmpty(pagePath)) {
return "/";
}
return pagePath;
}