Como posso obter a base do site?

Eu quero escrever um pequeno método auxiliar que retorne a URL base do site. Isto é o que eu vim com:

public static string GetSiteUrl()
{
    string url = string.Empty;
    HttpRequest request = HttpContext.Current.Request;

    if (request.IsSecureConnection)
        url = "https://";
    else
        url = "http://";

    url += request["HTTP_HOST"] + "/";

    return url;
}

Existe algum erro nisso, em que você pode pensar? Alguém pode melhorar isso?

questionAnswers(13)

yourAnswerToTheQuestion