在asp.net mvc AsyncController中找不到资源

Her*_*man 1 c# asynccontroller asp.net-mvc-2

我刚刚将我的控制器转换为asp.net mvc 2中的asyncController.(即:分割动作方法关于AboutAsync和AboutCompleted).但是,我收到资源未找到错误.

我的路线表没有变化,我能想到的唯一原因是因为我是mvcextension项目.既然它是自己的controllerFactory接线并从IoC容器创建实例,它是否需要连接AsyncHttpHandler呢?任何人都可以放弃一些提示吗?

提前致谢.

Lev*_*evi 5

有关要检查的事项的一些注意事项,按顺序:

  • 确保您的控制器是AsyncController的子类,而不仅仅是Controller.
  • 命中HomeController :: AboutAsync()/ AboutCompleted()的URL应该是/ Home/About(Async不是URL的一部分)
  • 如果你正在使用自定义调用程序,它必须子类化AsyncControllerActionInvoker(或实现IAsyncControllerActionInvoker)而不是子类ControllerActionInvoker直接
  • 确保您将MvcRouteHandler挂钩到Routing(这应该是MapRoute的默认行为).如果您使用的是自定义IRouteHandler,请确保其GetHttpHandler()方法返回MvcHandler.(注意 - 你不应该继承MvcHandler.)