Know Your Debugger Part 4: Modifying Your Application During Execution

DZone 's Guide to

Know Your Debugger Part 4: Modifying Your Application During Execution

· ·
Free Resource
In this installment of "Know your Debugger", I am going to show you one of the lesser known secrets of debugging with Visual Studio.  You can actually make changes to objects while execution is broken.  I have a simple block of code with a breakpoint set and when hit you can see that the int i is equal to 5.

Notice that I am writing the output to the console twice.  I will step past the first time and then while broken on the second Console.WriteLine call I will change the int value to 7.  This is done through the same dialog that you use when inspecting objects.  You can click into values and actually change them:

Changing 5 to 7:

Now that I have changed the value, I will step through and allow the Console.WriteLine to run producing the following output in the console window:

In addition to being able to do this inline, you can also do it from the Intermediate Window, the  Locals and Watch windows:

Now you might be thinking to yourself, this is cool and all but when would I ever actually use this?  I find it most useful when I am testing and need to try my code with different values without having to stop execution, make a change to a value and restart.  I have found the ability to do this to be invaluable when trying to track down a problem and build a fix.

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}