I'm looking at upgrading an application we're developing here using Visual Studio 2003 / .NET 1.1 to Visual Studio 2008 / .NET 2.0.
Now I was testing stuff, and found that I have a reproducable case in which the .NET 1.1 version does what it is supposed to do, while the .NET 2.0 version (same code) ends up in an infinite recursion (the recursion is intentional, but it is supposed to be limited to 2 levels..)
Is there anything on the market for comparing program flow of two running applications, like a side-by-side debugger or something, or will I have to resort to stepping through both apps separately and trying to find the differences in flow/state manually?
I'm pretty sure it will be either that or adding a lot of logging code, but maybe anyone has a great idea / tip to track this down?
(FYI, my best guess at this moment is that it has something to do with data binding, because there were other [fatal] differences between .NET 1.1 and .NET 2.0 data binding...)