【问题标题】:Visual Studio 2013, changes not showing in debugVisual Studio 2013,调试中未显示更改
【发布时间】:2014-05-28 15:25:31
【问题描述】:

最近升级到 Visual Studio 2013 Pro 并且遇到了一些初期问题。

主要是,如果我在 Web 窗体的 .aspx 页面或 MVC 的 .cshtml 页面中更改任何 HTML 或 CSS,这些更改并不总是反映在我正在处理的页面上,并且不会出现无论我多久刷新或清除缓存。
我正在使用网络必需品,它应该将更改直接放在页面上,必须刷新页面,但这似乎也不起作用。

偶尔,但并非总是如此,如果我停止调试,更改后面的代码,然后再次运行项目,它说它运行的是与正在调试的代码版本不同的代码版本,我必须停止它,重新构建,然后调试。

在以前版本的 Visual Studio 上从未遇到过这些问题。

有什么建议吗?

【问题讨论】:

  • 您需要在工具栏(配置管理器)的下拉菜单中标记您的项目要编译。
  • 您找到解决方案了吗?我已经尝试了答案中列出的所有内容
  • @Ryand.Johnson 这是很久以前的事了,但我相信我最终使用了 Rebo lavo 提供的答案。需要注意的另一件事是确保您确实在调试中运行。我发现 Visual Studio 2015 在我发布时会将我切换到发布模式,如果我想继续调试任何进一步的更改,我必须将其切换回来。

标签: c# asp.net visual-studio visual-studio-2013


【解决方案1】:

我只是在过去的一个小时里尝试了每个答案,但都没有奏效。我只是清除了用于调试的浏览器(谷歌浏览器)上的缓存,它更新了我的更改。这个问题有正确的答案: visual studio not updating html / javascript to server / browser

【讨论】:

    【解决方案2】:

    我遇到了类似的问题,并通过检查您在 applicationhost.config 文件中找到的网站的虚拟目录路径找到了解决方案。

    通常位于此处: C:\Users{你的用户名}\Documents\IISExpress\config

    您要确保两个位置的物理路径相同,因为有时它们在处理各种分支/项目等时会变得不稳定。

    【讨论】:

      【解决方案3】:

      就我而言,我尝试了所有前面提到的答案,但没有任何效果。然后我去了系统日志,发现了一个关于为正在运行的应用程序加载 IIsexpress 失败的提示。我更改了应用程序使用的端口,瞧!一切恢复正常。认为这可能对某人有帮助

      【讨论】:

        【解决方案4】:

        我遇到了这个问题并尝试了所有构建配置更改等但没有成功。我在 Parallels VM 中运行 VS2015 并将项目保存在 Mac 上的驱动器上。 Mac 时间戳和 Win10 时钟之间似乎存在一些奇怪/微小的差异。

        将 Win10 时钟拨回 5 秒解决了该问题。奇怪但挽救了我的理智......

        【讨论】:

        • 这暂时有效。我一直在使用 Parallels 允许我作为外部驱动器访问的 Mac Dropbox。当我将 Dropbox 本地加载到 WinVM 上时,这个问题就消失了。顺便说一句,构建时间也有所改善,这很好。
        【解决方案5】:

        我在调试器中遇到了旧代码,控制台应用程序调用了 DLL。我相信这是因为以前版本的 DLL 安装在全局程序集缓存 (GAC) 中,并且 Visual Studio 调试器在 GAC 中调用 DLL(其中有旧代码)而不是当前版本。我从 GAC 卸载了 DLL,问题解决了。

        Uninstall an assembly from the GAC (MSDN)

        【讨论】:

          【解决方案6】:

          根本不是bug,和上面的答案无关。

          转到解决方案资源管理器并单击 --> 与活动文档同步。如下图:

          【讨论】:

          • 此选项只是同步解决方案资源管理器以突出显示活动文档。这不会影响开发服务器如何处理更改的文件。
          【解决方案7】:

          我今天遇到了同样的问题。我已经在(始终构建)上设置了该设置。清理和重建解决方案并没有解决问题。我在 C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\ 下找到了一个名为 root 的文件夹,其中包含许多临时的六进制命名文件夹。只有一个文件夹有今天的日期。我关闭了所有 VS 2013 窗口并删除了该文件夹。重新启动 VS 2013 后,我只需运行该项目,我的更改现在就回来了。

          【讨论】:

          • 疯了。这是我最后的希望,你救了我。谢谢!
          • 我遇到了同样的问题,每当我对控制器进行更改时,它都不会生效,我已经尝试过这种方法,但似乎没有任何改变
          • 我看到它在 2 个不同的文件夹 framework 和 framework64 中创建文件夹根目录
          【解决方案8】:

          进入工具-选项

          在项目和解决方案下 -> 构建和运行选择“在运行时,当项目过期时”下的“始终构建”

          【讨论】:

          • 酷,现在似乎表现得很好。奇怪的是,这不是默认值。谢谢
          • 其实可能有点为时过早。源代码现在可以正常构建,但 .aspx 和 .cshtml 更改仍未更新?
          • @HuwD:我遇到了类似的问题,但这样做是有问题的。您是否尝试过评论中提到的balexandre?
          • 配置管理器已选择用于调试的构建,但没有看到编译选项。我发现让它显示最新代码的唯一方法是从构建菜单中选择“清洁解决方案”
          • 这个答案与问题无关。
          猜你喜欢
          • 2015-10-09
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-10-05
          • 2015-06-24
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多