【问题标题】:Breakpoint will not break in SilverlightSilverlight 中的断点不会中断
【发布时间】:2012-07-17 17:39:17
【问题描述】:

我无法在 Silverlight Web 应用程序的服务器端设置断点。我知道代码可以执行,因为我可以按照我的预期中断异步回调。只有我的机器有这个问题。

我知道这似乎是一个常见问题,但是我所见过的所有答案都没有帮助我,包括:

  • 断点为红色,表示将被命中。
  • Silverlight 复选框已选中在网络项目的属性中。
  • 清理并构建解决方案。
  • 从源代码管理中获取新版本。
  • 从我的网络浏览器中清除了所有内容:缓存、cookie 等...(我使用的是 IE)。
  • 正在清除 %windir%/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files 中的临时文件。
  • 检查了所有项目都在配置管理器中构建。
  • 在配置管理器中设置为调试而不是发布。
  • 手动附加到 w3wp.exe 进程。
  • IIS 重置。
  • IIS 设置为使用 .NET v4,管道设置为经典未集成。
  • 重新安装 IIS 并重新配置。
  • 重新安装 Visual Studio。
  • 重新安装 Silverlight。

我正在使用 Visual Studio 2010 (.NET 4)、Silverlight 4 并使用 IIS(我认为是 6,不记得)来托管网站。

我发现的有趣行为(可能有助于诊断):

  • 如果我使用 Visual Studio 自己的开发服务器而不是 IIS 来托管站点,它仍然不会中断。
  • 我在 Debug -> Windows -> Proccess (Ctrl D, P) 下看到一篇博文(不记得在哪里提供了链接),以检查 w3wp.exe 进程是否设置为“Silverlight”下的“调试”标头 - 我的设置为“托管”并且在附加时无法将其设置为 Silverlight。在检查了正在工作的机器上的同事设置后,他的也被设置为托管。

任何建议将不胜感激!

更新:感谢所有建议。我决定格式化 C:\ 而不是花更多的时间玩,因为我的机器无论如何都非常需要它。我仍然不确定问题出在哪里,但它现在可以正常工作了。

在此之前我确实尝试了其他一些事情,例如删除 .sou 文件,并检查我运行的是同一版本的 Silverlight,在此 blog post 中提到,但没有运气。希望这将作为将来遇到此问题的人的清单。

【问题讨论】:

  • 您的应用程序没有配置为浏览器外吗?我在打开该设置时遇到了各种与调试相关的问题(可以在项目属性中的某处更改,现在不记得确切的位置了)。
  • 感谢您的评论。它只在浏览器中运行。明天我会看看那个设置 - 我现在不在工作来测试它。
  • 呃,我经常遇到类似的问题,通常在不同的浏览器中尝试会有所帮助...例如,您可以尝试在 Chrome 中进行测试。附加到使用 Silverlight 的 chrome.exe 进程并尝试 - 这可能是临时修复...
  • 谢谢你的建议,我明天试试。我不太确定这是问题所在,但我愿意尝试任何事情!
  • 我看到你选择了核选项。我喜欢它。

标签: c# silverlight breakpoints


【解决方案1】:

在使用 Silverlight 时,不应附加到 w3wp.exe。这是 IIS 的工作进程,与您的 Silverlight 代码无关。浏览器进程实际上执行您的 Silverlight 代码。您能否尝试在 IE 中打开您的 Silverlight 托管页面,然后使用 Visual Studio 附加到 iexplore.exe(再次检查 Silverlight 作为您要调试的代码类型)?

这应该允许您毫无问题地调试 Silverlight 代码。

【讨论】:

    【解决方案2】:

    您似乎已经尝试了几乎所有方法。您可能需要检查 ServiceReference.ClientConfig 文件。有时 WCF 服务更新会导致地址和端口更改。您还可以使用 Fiddler 进行检查,以查看您的服务调用指向的位置。

    【讨论】:

      【解决方案3】:

      我知道我迟到了,但我在 Silverlight 解决方案中遇到了这个问题。事实证明,问题在于我在 un-checking 之后在 Tools>Options>Debugging>General; 中选中了“仅启用我的代码(仅限托管)”选项,我的断点都被命中了。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-06-07
        • 2021-07-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-03-03
        • 2017-01-03
        相关资源
        最近更新 更多