как я могу использовать Global.asax и реализовать обработчик для него? - PullRequest
1 голос
/ 31 марта 2011

У меня есть Global.ascx, и я написал простой модуль записи URL:

void Application_BeginRequest(object sender, EventArgs e)
{
    try
    {
        string strPath = Context.Request.Url.AbsoluteUri;
        string[] sections = strPath.Split('/');
        int len = sections.Length;
        string strExtention = sections[len - 1].Split('.')[1];
        if (strExtention.ToLower().TrimEnd().Equals("xml"))
        {
            if (sections[len - 2].Equals("ATM"))
                Context.RewritePath("~/Include/XML Files/Orders/TMP/" + sections[len - 1]);
            else
                Context.RewritePath("~/Include/XML Files/Orders/" + sections[len - 1]);
        }
    }
    catch
    {
    }
}

это работает локально, но не работает в хосте, как я могу реализовать обработчик для этого?

Server.Transfer также не работает.

1 Ответ

1 голос
/ 31 марта 2011

Вы правы, когда идете по маршруту модуля. Однако вместо Context.RewritePath() используйте Response.Redirect(), это просто возвращает сообщение 3xx в браузер, который перенаправит его запрос на новый URL. Это должно работать везде, где это реализовано.

...