Visual Studio 2008调试器失去焦点

时间:2011-07-19 09:22:50

标签: visual-studio-2008 debugging

在调试ASP.NET应用程序时,我在VS2008上遇到了一个奇怪的问题。单步执行此代码时,下面显示的第二行将永远执行。 Visual Studio松散焦点,好像它正在等待当前行完成执行。

var headers = HttpContext.Current.Request.Headers;    
user.FirstName = string.IsNullOrEmpty(headers["fName"]) ? "Unkown" : headers["fName"];

有没有人在调试中遇到过类似的行为?

我认为上面的代码与Visual Studio的不稳定行为无关。大多数情况下,当我逐步执行上面的代码时VS调试器与IDE分离,而实际代码继续在后台运行。

编辑:更改了标题并添加了其他观察结果。

2 个答案:

答案 0 :(得分:1)

尝试将此行分解为

string fname = headers["fName"];
if(string.IsNullOrEmpty(fname))
{
  user.FirstName = "Unkown";
}
else
{
  user.FirstName = fname ;
}

再次调试,然后你就可以知道这段时间的线路在哪里。

答案 1 :(得分:0)

我的猜测是FirstName是一个属性,而且这个属性的setter正在做一些花费很多时间的东西。