Unable to debug managed code using visual studio 2013 ("Cannot evaluate expression" error - am using debug build) (Note that VS 2012 works)

I have .net application (GUI as well as PowerShell) built against 4.5. My OS is server 2012. When I attach my application to 2013 visual studio, the debugger is not working sometimes. Its not evaluating expression or showing locals (and also watch window/immediate window nothing works - its as if the project is build with release). But I have build with 'Debug' configuration. And as mentioned same thing works when I simply attach with VS 2012 ( yes, I have 2k13 and 2k12 SXS)

Please note that if I attach the same process with the same settings (managed debugging), to Visual Studio 2012 it always works.

I made sure the symbols are loaded (by checking modules tab in visual studio + debug + windows), break points are hit.

Any thoughts on what might be the issue? All the updates are up-to-date as well.

Its kind of annoying to launch vs 2012 just to debug, when I am using VS 2k13 IDE for development.

Regards!


Solution 1:

If you are facing the same issue, please look at http://weblog.west-wind.com/posts/2013/Nov/21/Visual-Studio-2013-Could-not-evaluate-Expression-Debugger-Abnormality for details.

Here is the answer which solved for me:

I have set the flag "use managed compatibility mode" in Tools | Options | Debugger | General.

For details, take a look at the link as he explained it nicely as a story :)

Am happy it worked, otherwise I just had to load project in vs 2k12 just to debug it which is annoying.

EDIT on 12th June 2014

I have updated my dev environments with visual studio 2013 update 2 (http://www.microsoft.com/en-us/download/details.aspx?id=42666) (as per Maria's suggestion below) and removed "using managed compatibility mode". I will be testing my apps (ps cmdlets, gui, services) and update you in couple of weeks if the debugger is ok for me.

EDIT on 26th June 2014

I have tested my apps and luckily for me everything is working nicely :). Even the debugger is doing pretty good job with new async/await model. So, see if you can upgrade to 'update 2' - hopefully this works in your environment too?. Thanks to Maria and debugger's team!

Regards.

Solution 2:

I deleted all my breakpoints and then it started working, with Visual Studio 2013 Update 1. This was one of the suggestions from the blog post mentioned by Dreamer.

Solution 3:

We have released a fix for the issue you are describing in Update 2 CTP 2 of Visual Studio -
Please let me know if that doesn't resolve your issue!

Thanks! Maria - Visual Studio Debugger