我是MVC应用程序的新手,请帮助我。
我在Windows 7 pc上使用Framework 4.0的Visual Studio 2012上有一个应用程序,并且正在IIS Express中进行调试。
开始调试时,我的应用程序没有响应:在Application_Start
文件中启动Global.asax
之后,执行不会继续,浏览器也没有从服务器(即我的localhost
)获得任何答案或错误消息。
当执行Application_Start
时,运行至指令AreaRegistration.RegisterAllAreas()
,不再执行。
调试不会停止,但不会执行以下指令:
Sub Application_Start()
Try
RouteTable.Routes.MapHubs() ' regularly executed
AreaRegistration.RegisterAllAreas() ' Break point: goes here and no more
.............
Catch ex As Exception
Dim errorString As String = ex.Message ' never goes here
End Try
End Sub
我几乎没有什么地方可以注册。
有人可以帮我吗?
提前致谢!
费德里科
PS:
我已经解决了,但仍然无法理解我的错误原因。
我只是在
RouteTable.Routes.MapHubs()
之后立即写了指令AreaRegistration.RegisterAllAreas()
。现在我的代码是:
Sub Application_Start()
Try
AreaRegistration.RegisterAllAreas()
RouteTable.Routes.MapHubs()
..........
Catch ex As Exception
Dim errorString As String = ex.Message
End Try
End Sub
而且有效。
仍然,使用Hub for SignalR与this one类似仍然有很多问题(但所有建议的解决方案都不适合我)。
我是否总是将
MapHubs
作为Application_Start
的第一条指令执行?谢谢!
费德里科
最佳答案
据我所知,您必须先注册MapHubs,然后才能注册其他路线。
至于调试停止未命中,可能是因为您通常无法在Application_Start内进行调试停止。 More information here
关于asp.net-mvc - Application_Start不响应RegisterAllAreas(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14891830/