This project is read-only.

How to use

There are 2 versions, one for .NET 3.5 and one for 4.0.
Just build the projects "EntityVisualizers35" and "EntityVisualizers40" and put the output assemblies in My Documents\Visual Studio 20xx\Visualizers.
They will start working immediately, no need to restart Visual Studio.
Any object that is registered for visualizing in the assembly will show up in the debugger tooltip (or debugger watch) with a magnifier glass while debugging. Clicking it will bring up the visualizer.
The projects "EVTest35" and "EVTest40" are just for faster testing without each time having to copy the output and to test it in another solution.

How it works

It's not possible to use a simple visualizer, because the EntityObject class is not serializable. Therefore, we copy the data to be visualized into a dataset (in the xxxVisualizerObjectSource classes) and serialize this dataset into xml. In the xxxVisualizer classes, we copy the incoming data into a some kind of grid and show it on a form.
Probably by replacing the dataset with some lightweight serializable collection, this could be improved.

The code for the EntityObject visualizer is based on the code in Julie Lerman's "Programming Entity Framework" (which is highly recommended). Thanks Julie, for giving the permission to publish this project!

Remarks

  • For testing, the project uses the AdventureWorksLT sample database and SQL Server Express version
  • In the 3.5 version, the reference fields don't show up (yet), in the 4.0 version they do.
  • The EntityCollectionVisualizer is actually registered to show the visualizer for the RelatedEnd class, which EntityCollection derives from. When the RelatedEnd is not an EntityCollection (i.e. when it is an EntityReference), the visualizer will show a warning.
  • The visualizer for ObjectQuery may be slow for some providers, and even give time-outs
  • You can put both assemblies in the Visualizers folder. Projects that use .NET 3.5 will use the visualizer for .NET 3.5 and likewise for .NET 4.0.

Last edited Jan 29, 2011 at 10:14 AM by JBranders, version 3

Comments

weitzhandler May 4, 2012 at 12:39 AM 
Would be great if you attach some screenshots so we can take a look at what we are about to install.