|
|
1
2
“问题最近才开始”。什么改变了?以下是一些猜测:
默认情况下,IE8将至少运行2个进程。一个用于浏览器框架,另一个用于初始选项卡的内容。当您打开更多窗口和选项卡时,IE可能会向当前使用的集合添加新进程。 当您调试时,VS将启动一个新的IE8会话,并将附加到处理打开的单个选项卡内容的进程(它不需要附加到父框架进程)。然而,当你浏览你的应用程序时,IE8会启动一个新的过程,而vs不会被附加到这个过程中。这将强制您打开“附加到进程”对话框并手动执行。 您可以从注册表控制这个IE8特性(称为btw lcie,松散耦合的ie)。
在关键
如果您也使用IE8作为常规浏览器,这可能有点苛刻。一种选择是出于测试目的离开IE8,并使用另一个浏览器进行常规浏览。另一种选择是上述的变化。而不是创造
注意,如果没有注册表条目IE8,它会使用自己的特性(取决于可用内存等)来确定新进程是否已被保存。这可以解释为什么在过去调试工作正常,而且显然没有理由它停止工作。 |
|
|
2
1
问题是: 我的一个小窗口有一个Silverlight,它调用.NET RIA服务。服务调用因错误而结束。 下一次我调试了几个,调试程序没有附加到子窗口。我不得不手动安装在儿童窗上。 我修复了RIA服务调用,这样它就不会以错误结束。必须在调试会话中手动附加到子窗口。但是,在随后的调试会话中,调试器会自动附加。 我试图中断RIA服务呼叫,我不得不再次手动添加。有点奇怪的是,关闭Visual Studio甚至重新启动计算机都不会使Visual Studio再次自动附加。您必须有一个调试会话,在该会话中,子窗口成功地调用RIA服务来修复它。 注: 破坏我的调试器的RIA错误是由域查询中拼写错误的include(即…
)并非所有RIA异常都会导致此问题。 我的场景有许多具体的案例,我将详细介绍。我没有足够的工具来测试一个更一般的场景,但是当我完成我的项目时,我会这样做,除非有人先这样做。 以下是我的资料: 我使用的是2009年7月.NET RIA Services预览版中的a linqtoentiesdomainservice。 更复杂的是,由于我的应用程序使用的是Oracle后端,所以我将Devart的Dotconnect实体提供程序用作我的域服务的EntityFramework模型。 当我有时间的时候,我会在2009年11月的RIA和一个标准的SQL后端和EF上尝试这个,看看我是否还有同样的问题。如果是这种情况,我会将它作为一个Visual Studio错误报告给Microsoft。 |