加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – Visual Studio可以在新的调试会话中重新启动IIS Expr

发布时间:2020-12-15 23:48:17 所属栏目:asp.Net 来源:网络整理
导读:我有一个ASP.Net应用程序,在Global.asax中的Application_Start期间执行一些数据库初始化.我正在使用IIS Express来调试应用程序. 我发现如果我停止调试,清除数据库,并重新启动,Application_Start代码不被调用,我的数据库没有被初始化正确,所以我的应用程序失
我有一个ASP.Net应用程序,在Global.asax中的Application_Start期间执行一些数据库初始化.我正在使用IIS Express来调试应用程序.

我发现如果我停止调试,清除数据库,并重新启动,Application_Start代码不被调用,我的数据库没有被初始化正确,所以我的应用程序失败.这是因为IIS Express实例在调试停止后仍然运行.而不是重新启动它,Visual Studio似乎附加到现有的进程.

有没有办法改变这种行为,以便启动新的调试会话始终重新启动IIS Express中的应用程序进程(或在常规IIS中重置应用程序池)?

或者,是否有办法强制IIS Express在调试会话结束时关闭?

我确实发现,如果我在项目设置中从Web对话框中选中“启用编辑并继续”,那么在调试结束时它具有停止IIS Express的副作用.但我不知道我是否想要介绍编辑和继续的副作用,只是为了停止IIS Express.当然有更好的方法吗?

不确定是否重要,但这是VS2012.

解决方法

不幸的是,通过配置无法实现.我可能会提出你另一个伎俩,但是由你决定是否比你的更好:)

您可以创建一个修改后的事件来更改web.config文件的时间戳.我从http://www.stevemiller.net/apps/使用了一个touch.exe工具.您还需要将“运行后建立事件”设置为“始终”.因此,您的“构建事件”配置可能如下所示:

只要启动调试器,这个选项就被设置,web.config时间戳被更新,导致应用程序重新启动(应用程序appdomain重新加载)在第一个请求 – 但在这一点上,你已经附加到这个进程,所以你的Application_事件断点应该工作.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读