Используете пользовательский MvcHttpHandler v2.0. Прерывистое изменение с 1.0 на 2.0?
У меня есть сайт, где часть - это webforms (Umbraco CMS), а часть - MVC. Это HttpHandler для работы с функциональностью MVC:
public class Mvc : MvcHttpHandler
{
protected override void ProcessRequest(HttpContext httpContext)
{
httpContext.Trace.Write("Mvc.ashx", "Begin ProcessRequest");
string originalPath = httpContext.Request.Path;
string newPath = httpContext.Request.QueryString["mvcRoute"];
if (string.IsNullOrEmpty(newPath))
newPath = "/";
httpContext.Trace.Write("Mvc.ashx", "newPath = "+newPath );
HttpContext.Current.RewritePath(newPath, false);
base.ProcessRequest(HttpContext.Current);
HttpContext.Current.RewritePath(originalPath, false);
}
}
Полная информация о том, как это реализованоВот Этот метод хорошо работает на веб-сайте MVC 1.0. Однако, когда я обновляю этот сайт до MVC 2.0, следуя инструкциям вДокументация по обновлению Microsoft; все компилируется, кроме как во время выполнения я получаю это исключение:
Ошибка сервера в приложении '/'
Этот ресурс не может быть найден.
Описание: HTTP 404. Ресурс, который вы ищете (или одна из его зависимостей), мог быть удален, изменилось его имя или временно недоступен. Пожалуйста, просмотрите следующий URL и убедитесь, что он написан правильно.
Запрашиваемый URL: /mvc.ashx
Информация о версии: Microsoft .NET Framework Версия: 2.0.50727.4927; ASP.NET версия: 2.0.50727.4927
Этот ресурс и его зависимости хорошо видны в MVC 1.0, но не в MVC 2.0. Нужно ли добавить дополнительную зависимость? Я что-то упускаю? Есть ли изменение в способе работы MVC 2.0?