OmarElabd / ObjectExporter

Object Exporter lets you export out an object while debugging in Visual Studio, the object can be serialized in either C#, JSON or XML.
GNU General Public License v3.0
264 stars 82 forks source link
debugging dumper exporter regression-testing testing-tools visual-studio

Object Exporter

Join the chat at https://gitter.im/OmarElabd/ObjectExporter Build status

Object Exporter lets you export out an object while debugging in Visual Studio. Currently supported output formats are: C# Object Initialization Code, JSON and XML.

Release Notes

[1.7.0] (https://raw.githubusercontent.com/OmarElabd/ObjectExporter/master/ObjectExporter.VsPackage/Documentation/Release%20Notes.txt)

Use Cases

  1. Persisting an object state for debugging comparisons.

  2. Searching for information within objects.

  3. Generating C# object initialization code for unit testing.

Output

The currently supported output formats are: C# Object Initialization Code, JSON and XML.

Instructions

Object Exporter is accessed through the tools menu and is only visible when you are debugging and stopped at a breakpoint.

Select from tool menu

Once the menu option is selected a dialog is shown with settings for the Object Export.

Object exporter has two modes for selecting objects to export, one is by selecting from a checklist which is populated with your locals.

Select locals

The other mode is by writing a custom expression as you would in the watch window.

Custom Expression

Once an object is written or selected, object exporter will attempt to calculate it's depth in the background. This depth will give you an indication of what cutoff would need to be specified to export the entire object. Note some objects may contain circular references.

Select Locals with calculated depth

Once your objects and settings are selected, you may export them in your desired format. A dialog will be displayed with the generated ouput for each of your objects.

C#:

Generated C#

JSON:

Generated JSON

XML:

Generated XML

Settings

Object exporter settings is access through Tools -> Options -> Object Exporter

Settings

Powered By

Object Exporter is powered by RayGun.

Raygun