10

我将应用程序升级到 Web Api 2,并且 Application_Start 不会触发在 IIS Express 上运行的升级后。我确实遵循了http://www.asp.net/mvc/tutorials/mvc-5/how-to-upgrade-an-aspnet-mvc-4-and-web-api-project-to-的官方升级路径aspnet-mvc-5-and-web-api-2并三重检查了我的设置。

该应用程序使用 StructureMap MVC 4 来注入依赖项。所以 WebActivator 的 PreApplicationStartMethod 被触发并且依赖解析器被正确设置。之后,无法追踪其他执行。我已启用编辑并继续,但未命中 Application_Start 开头的断点。

这是我尝试过的所有方法:禁用 PreApplicationStartMethod 并运行应用程序 b. 更改 Global.asax 的编译设置和 c 后面的代码。创建另一个具有类似结构的 WebApi2 项目并设置减去实际代码并且工作正常

我已经清理并运行了该应用程序;还清理了 Temp ASP.NET 文件夹

感谢您对解决此问题的帮助。

4

4 回答 4

5

您的调试器会在您的应用程序启动后附加,因此您不会在应用程序启动方法中遇到任何断点。一种解决方法是在您连接到进程时让您的网络服务器重新启动:

只需编辑您的 web.config(只需添加一个空格)并保存它,这将使您的 http 应用程序重新启动。

于 2013-10-30T20:33:02.727 回答
2

在您的 Application_Start 中添加一条Debugger.Break();语句,然后执行iisreset或回收您的应用程序池,然后按 F5。如果断点没有切断它,应该会出现一个即时调试器窗口。

于 2014-01-27T17:03:11.020 回答
1

确保 IIS Express 已关闭,然后再次 F5 以查看 Application_Start 是否被命中。

于 2013-10-30T20:23:40.577 回答
0

我刚刚遇到了同样的问题。global.asax.cs 方法Application_Start()没有参数。一旦我添加了标准方法,Application_Start(object sender, EventArgs e)该方法就会受到影响。

于 2016-01-19T17:43:35.770 回答