【问题标题】:ASP.NET MVC / Castle Windsor / IIS6 / Modified MapRoute {controller}.aspxASP.NET MVC / Castle Windsor / IIS6 / Modified MapRoute {controller}.aspx
【发布时间】:2009-08-14 14:30:08
【问题描述】:

我用 ASP.NET MVC 编写了一个 Web 应用程序。默认 ControllerFactory 已替换为 Castle Windsor 的 Controller

ControllerBuilder.Current.SetControllerFactory(new WindsorControllerFactory());

问题是我使用的是运行 II6 的共享主机,所以为了让 MVC 正常工作,我不得不将默认 MapRoute 替换为

        routes.MapRoute(
            "Default",
            "{controller}.aspx/{action}/{id}",
            new { controller = "Home", action = "Index", id = "" }
        );

[ 注意:{controller}.aspx ]

当我使用此修改后的 MapRoute 上传新创建的“ASP.NET MVC Web 应用程序”时,它工作正常......但是当我上传我的 MVC Web 应用程序(使用 Castle Windsor)时 我在浏览器中收到以下错误:

网址[http://10.0.0.9/LoseOnlyToday/Home.aspx]


“/LoseOnlyToday”应用程序中的服务器错误。 IControllerFactory 'WebUI.WindsorControllerFactory' 没有为名为 'Home.aspx' 的控制器返回一个控制器。 说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息:System.InvalidOperationException:IControllerFactory 'WebUI.WindsorControllerFactory' 未返回名为“Home.aspx”的控制器的控制器。

来源错误:

在执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来识别有关异常来源和位置的信息。

堆栈跟踪:

[InvalidOperationException:IControllerFactory 'WebUI.WindsorControllerFactory' 没有为名为 'Home.aspx' 的控制器返回控制器。] System.Web.Mvc.MvcHandler.ProcessRequest(HttpContextBase httpContext) +304 System.Web.Mvc.MvcHandler.ProcessRequest(HttpContext httpContext) +54 System.Web.Mvc.MvcHandler.System.Web.IHttpHandler.ProcessRequest(HttpContext httpContext) +7 System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +181 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75

版本信息:Microsoft .NET Framework 版本:2.0.50727.3053; ASP.NET 版本:2.0.50727.3053


我认为 Castle Windsor 不喜欢将“Home.aspx”解释为控制器......

我该如何解决这个问题?

【问题讨论】:

    标签: asp.net-mvc iis-6 castle-windsor


    【解决方案1】:

    好的,所以我发现它为什么不起作用...当您上传网站文件时,我最初上传了所有内容 - 但在进行了一些更改后,我只上传了“Global.asax”和“Global.asax.cs”。问题是 .cs 文件甚至不应该被上传......项目被编译并作为“.dll”存储在 bin 文件夹中,并且必须上传这个文件才能使更改生效......

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-11
      • 1970-01-01
      • 1970-01-01
      • 2011-05-16
      相关资源
      最近更新 更多