Visual studio 2013 在Chrome中停止调试后Visual Studio ASP.NET崩溃

Visual studio 2013 在Chrome中停止调试后Visual Studio ASP.NET崩溃,visual-studio-2013,crash,Visual Studio 2013,Crash,我正在开发一个可以将音频文件传输到浏览器的网站。这是我在Visual Studio 2013中开发的asp.net应用程序。使用范围请求头,使用部分内容响应将音频流传输到客户端im。代码如下所示: [HttpGet, ActionName("GetFile")] public HttpResponseMessage GetFile(string fileName) { var rootPath = AppDomain.CurrentDomain.BaseD

我正在开发一个可以将音频文件传输到浏览器的网站。这是我在Visual Studio 2013中开发的asp.net应用程序。使用范围请求头,使用部分内容响应将音频流传输到客户端im。代码如下所示:

    [HttpGet, ActionName("GetFile")]
    public HttpResponseMessage GetFile(string fileName)
    {
        var rootPath = AppDomain.CurrentDomain.BaseDirectory;
        var fullPath = Path.Combine(rootPath, "SoundFiles", fileName);

        byte[] file = File.ReadAllBytes(fullPath);
        var mediaType = MediaTypeHeaderValue.Parse("audio/mpeg");

        var memStream = new MemoryStream(file);

        if (Request.Headers.Range != null)
        {
            try
            {
                var partialResponse = Request.CreateResponse(HttpStatusCode.PartialContent);
                partialResponse.Content = new ByteRangeStreamContent(memStream, Request.Headers.Range, mediaType);
                return partialResponse;
            }
            catch (InvalidByteRangeException invalidByteRangeException)
            {
                return Request.CreateErrorResponse(invalidByteRangeException);
            }
        }
        else
        {
            var fullResponse = Request.CreateResponse(HttpStatusCode.OK);
            fullResponse.Content = new StreamContent(memStream);
            fullResponse.Content.Headers.ContentType = mediaType;
            return fullResponse;
        }
    }
每次播放歌曲时,都会调用此方法从服务器获取文件,并将其部分流式传输到客户端。整个应用程序是用Signal构建的

这对我来说非常有效,代码没有问题。在我买了一台新电脑之前,我通常在电脑上安装Visual Studio 2013,包括IIS Express 8.0等。但这台电脑发生了一些奇怪的事情

如果我开始用Google Chrome进行调试,然后如果我对网站做了正常的事情,但没有播放歌曲(没有调用该方法),然后再次停止调试,我就没有问题了。但是如果我在Chrome中启动它并播放歌曲(调用该方法),然后尝试停止调试,VisualStudio会冻结,但没有信息表明它正在挂起。只是挂着,我关不上。我甚至无法与任务管理器一起关闭它。没有显示错误。如果我试图关闭我的电脑,那么电脑将不会关闭,直到我按下电源按钮很长一段时间。现在奇怪的是:如果我尝试完全相同的东西,但在InternetExplorer中,VisualStudio工作正常,根本不挂起。只有在我使用Chrome进行调试并且仅在运行VisualStudio的同一主机上,才会发生这种情况。如果我将Chrome连接到网络中的其他设备上,则不会产生任何效果

我发现,我可以在不进行调试的情况下运行应用程序。如果我这样做,效果会很好,但如果我播放一首歌,然后尝试关闭Visual Studio,它会很快挂起约30秒,然后退出

我无法找出问题所在

我已经尝试过的是:

  • 重新安装Visual Studio 2013
  • 尝试使用Visual Studio 2015,效果相同
  • 重新安装Windows 8.1
  • 在Visual Studio中重置导入/导出设置
  • 以管理员身份运行Visual Studio
  • 将声音文件移动到其他目录
  • 试试谷歌Chrome金丝雀,效果也一样
真正奇怪的是,这种情况只发生在同一台机器上的Chrome上,而且只发生在我的新电脑上。同样的情况在我的电脑或旧笔记本电脑上也能完美地工作

我能想象的是,由于chrome的原因,chrome使用范围请求而ie不使用。它将音频的完整响应作为200,chrome将范围作为部分内容。这可能是个问题,但我不确定,也不知道如何解决或解决这个问题


你们知道是什么导致了这个问题吗?

好的,我没有找到问题,但我找到了解决办法。因为它是一台新电脑,所以上面有一点臃肿的东西。我卸载了我不需要的东西,然后它神奇地工作了。再也没有撞车了。我有一台华硕ROG G20AJ。我不知道到底是哪个臃肿软件导致了这个问题,但它是其中的一部分。因此,如果您在华硕计算机上遇到类似问题,请尝试卸载一些未使用的软件

这不是Visual Studio崩溃,而是IIS服务。我真的认为这是一个非常奇怪的行为,因为只有当我执行上面的代码片段时,崩溃才会发生。。。不管怎样,它现在起作用了