Como verificar se o item Sitecore está usando o alias

tualmente, um "Alias" no Sitecore produzirá várias rotas para o mesmo item de conteúdo, o que pode afetar negativamente o SEO em alguns caso

Estou procurando uma maneira de verificar programaticamente se a Página / Item / URL / Solicitação atual está usando um alias ou nã

Eu esperava que houvesse algo parecido com:

Sitecore.Web.WebUtil.IsAlias

Alguma idéia de como procurar aliase

-------ATUALIZAR------

Aqui está minha solução atual que parece funcionar muito bem ... A menos que alguém tenha uma idéia melhor?:

protected bool IsAlias
{
    get
    {
        string fullPath = LinkManager.GetItemUrl(Sitecore.Context.Item);
        return !HttpContext.Current.Request.RawUrl.StartsWith(fullPath, StringComparison.OrdinalIgnoreCase);
    }
}

------ ATUALIZAÇÃO 2 ------

@Here é uma solução funcional baseada nas sugestões de Yan. Não acredito que Sitecore.Context.Database.Aliases.GetTargetUrl () esteja funcionando a partir do Sitecore 6.4.1. então eu tive que improvisar um pouco.

if (Sitecore.Configuration.Settings.AliasesActive &&
    Sitecore.Context.Database.Aliases.Exists(HttpContext.Current.Request.RawUrl))
{
    const string format = "<link rel=\"canonical\" href=\"{0}://{1}{2}\"/>";
    Item targetItem = Sitecore.Context.Database.GetItem(Sitecore.Context.Database.Aliases.GetTargetID(HttpContext.Current.Request.RawUrl));
    return String.Format(format, HttpProtocol, HttpContext.Current.Request.Url.Host, LinkManager.GetItemUrl(targetItem));
}

questionAnswers(2)

yourAnswerToTheQuestion