2012-07-17 47 views
10

我无法在Silverlight Web应用程序的服务器端创建断点。我知道代码执行,因为我可以用我期望的异步回调中断。这只是我的机器有这个问题。断点在Silverlight中不会中断

我知道这似乎是一个常见的问题,但所有的答案,我已经看到了没有帮助我,包括那些:

  • 断点红色表明它会被击中。
  • Silverlight复选框被选中关于web项目的属性。
  • Clean &构建解决方案。
  • 从源代码管理中获取新版本。
  • 清除我的网页浏览器中的所有内容:缓存,cookies等...(我正在使用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提到,没有运气。希望这将成为未来有此问题的人的核对清单。

+0

是不是将您的应用程序配置为浏览器外?在开启该设置后,我遇到了各种与调试有关的问题(它可以在项目属性中的某处进行更改,现在不记得确切的地方)。 – 2012-07-17 17:46:44

+0

感谢您的评论。它只能在浏览器中运行。明天我会看看那个环境 - 我现在没有在工作来测试它。 – 2012-07-17 17:55:12

+0

Urgh,我经常遇到类似的问题,通常尝试在不同的浏览器中帮助...例如,您可能会尝试在Chrome中进行测试。附加到使用Silverlight的chrome.exe进程并尝试 - 可能是临时修复... – 2012-07-17 20:49:54

回答

0

看来你已经尝试了几乎所有的东西。您可能需要检查ServiceReference.ClientConfig文件。有时WCF服务更新会导致地址和端口更改。您也可以使用Fiddler来查看您的服务呼叫。

3

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

这应该允许你调试你的Silverlight代码而没有任何问题。

0

我知道我迟到了,但是我在Silverlight解决方案中遇到了这个问题。事实证明,问题是我已经在Tools>Options>Debugging>General;中选中了'Enable Just My Code(仅管理)'选项,未检查这个,我的断点都被击中。