Wouldn't it be nice to be able to see a SubSonic collections while you are debugging, just like the DataSet debug visualizer? Because we often need such a tool to debug our SubSonic collections here at LavaBlast, I've created a small Visual Studio Debug Visualizer that you can use to see what your SubSonic collections contain. How does it work? While you are debugging, put a breakpoint somewhere and simply hover your mouse over a SubSonic collection variable. You should see something similar to the screenshot shown above.
Once the tooltip has appeared, you can click on the small magnifier to open the debug visualizer. You'll see a DataGridView similar to the picture on the right. This will show all your SubSonic objects in a easy to navigate list. Basically my code takes the SubSonic list and transform it in a DataTable. I can't use the method ToDataTable() from the SubSonic AbstractList because this requires access to the provider's configuration, and the JIT executing the debug visualizer doesn't have access to it.
To use this simple tool, download this file SubSonicVisualizer.dll (8.00 kb) and put it in your [My Documents]\Visual Studio 2008\Visualizers\ folder, creating the directory if it doesn't already exist. (You might want to double check your file system permissions on this folder, as well.) I compiled this for Visual Studio 2008. I have also included the source code here (Visual Studio 2008) in case anyone wants to enhance it.
SubSonicVisualizer.zip (386.36 kb)
If you are using Visual Studio 2005, I think this file will work for you, but I have not tested it: SubSonicVisualizer2005.dll (8.00 kb). I simply changed the reference from Microsoft.VisualStudio.DebuggerVisualizers.dll version 9.0 to 8.0 and, from what I have read, it should work in VS.NET 2005.