我有一个网站,其中一部分是网络表单(Umbraco CMS),一部分是 MVC 这是处理 MVC 功能的 HttpHandler:
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 网站中运行良好。但是,当我按照Microsoft 升级文档中的步骤将此站点升级到 MVC 2.0 时;一切都编译,除了在运行时我得到这个异常:
“/”应用程序中的服务器错误。
无法找到该资源。
说明: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 的工作方式有变化吗?