我的 ASP.NET MVC 3 web 项目运行良好,然后我重新编译它,现在我收到此错误(更改了一些路径和命名空间以保护无辜者):
你调用的对象是空的。说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.NullReferenceException:对象引用未设置为对象的实例。
源错误:
第 66 行:
RouteTable.Routes.MapRoute( 第 67 行:
"DefaultRoutes", // 路由名称 第 68 行:
"{module}/{controller}/{action}/{id}", // 带参数的 URL源文件:....\Global.asax.cs
行:66堆栈跟踪:
[NullReferenceException:对象引用未设置为对象的实例。] D 中的
Project.MvcApplication.RegisterRoutes(RouteCollection routes):.....\Global.asax.cs:66 D 中的 Project.MvcApplication.Application_Start(): .....\Global.asax.cs:139[HttpException (0x80004005): Object reference not set to an instance of an object.]
System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode(HttpContext context, HttpApplication app) +4051717 System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[ ] 处理程序)+191
System.Web.HttpApplication.InitSpecial(HttpApplicationState 状态,MethodInfo[] 处理程序,IntPtr appContext,HttpContext 上下文)+352 System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext,HttpContext 上下文)+407 System.Web.Hosting .PipelineRuntime.InitializeApplication(IntPtr appContext) +375[HttpException(0x80004005):对象引用未设置为对象的实例。]
System.Web.HttpRuntime.FirstRequestInit(HttpContext context)+11642112
System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context)+141
System.Web.HttpRuntime。 ProcessRequestNotificationPrivate(IIS7WorkerRequest WR,HttpContext 上下文)+4865877
我在 Windows 7 x64 上使用 IIS7.5,应用程序池配置为使用 .NET 4 和“集成”托管管道运行。
我已经尝试重新启动,并且还清理了 bin 和 obj 文件夹,但没有成功。
一些额外的信息被证明很重要 - 上面错误页面中缺少的行:
RouteTable.Routes.MapRoute(
"DefaultRoutes", // Route name
"{module}/{controller}/{action}/{id}", // URL with parameters
new { module = _loadedModules.FirstOrDefault().Name, controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);