Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 全局asax应用程序在调试会话开始时触发_C#_Asp.net Mvc_Session_Iis_Visual Studio 2013 - Fatal编程技术网

C# 全局asax应用程序在调试会话开始时触发

C# 全局asax应用程序在调试会话开始时触发,c#,asp.net-mvc,session,iis,visual-studio-2013,C#,Asp.net Mvc,Session,Iis,Visual Studio 2013,我有一些奇怪的行为,我认为这是不正常的,这导致我在dev中调试问题,因为我必须启动调试器两次 在本地开发时更改代码后,按F5进行调试会导致应用程序启动,即使IIS尚未运行。这显然会清除会话状态,并在稍后引用会话时在代码中引发问题 不管怎样,我还是要复制 在VS 2013 Pro中创建新的mvc项目 将以下内容添加到Global.asax protected void Application_End() { string test = ""; } 现在,ie上的“编辑并继续”将启动IIS

我有一些奇怪的行为,我认为这是不正常的,这导致我在dev中调试问题,因为我必须启动调试器两次

在本地开发时更改代码后,按F5进行调试会导致应用程序启动,即使IIS尚未运行。这显然会清除会话状态,并在稍后引用会话时在代码中引发问题

不管怎样,我还是要复制

在VS 2013 Pro中创建新的mvc项目 将以下内容添加到Global.asax

protected void Application_End()
{
    string test = "";
}
现在,ie上的“编辑并继续”将启动IIS express,并在每次调试会话点击F5时结束。在某个时刻(通常在呈现第一页时),断点被命中,会话丢失。 我意识到如果IIS已经在运行,这将是正常的行为,因为编译的程序集将触发应用程序域进行回收。然而,IIS还并没有运行,它是由VS在F5调试会话开始时启动的,我已经在任务管理器中检查了进程

我甚至在一个只包含一个控制器、一个视图和一个viewbag变量的项目中体验过这种行为

它与浏览器无关,就像chrome一样 没有IIS日志或事件日志 它在第二次使用时效果很好,我想并没有改变组件来触发回收

为了向自己证明这是不正常的,我使用VS 2013 Ultimate在自己的机器上重复了测试,不能让它失败

这两台机器都运行Win 7 64位和IIS Express 8

有人知道是什么原因导致IIS在我的应用程序运行时终止了它吗

更新 我已经在一台Win 7 64位虚拟机上尝试了相同的测试,该虚拟机托管在遇到问题的机器上,并且成功了。 然后我将我的开发复制到虚拟机,这也可以正常工作

因此,在我的works机器上,IIS Express 8或VS 2013 Pro存在一些问题

有人知道是什么被破坏或改变导致了这种情况吗