Object Properties

Learn how to record complex user-defined object's properties

Estimated reading time: 1 min

Last edited: 04 Nov 2019

Due to high impact on memory usage, on default RevDeBug does not record all of the objects. But you can enable this functionality with the use of RevDeBug API. It will allow you to record user-defined (i.e. with source code available) complex object.

First you need to add RevDeBug to your application. To do this, follow this chapter about API installation.

Example - recording complex objects

The idea behind complex objects’ recording is very simple: you just need to call RevDeBug.Api.CrashRecorder.Api.ComplexObject on that object and all its properties will be automatically inspected and stored in the recording.

Here is an example made on our Demo application. In the MainWindow() of this application we will create a brush, and try to get it’s property value with the use of RevDeBug API.

MainWindow.xaml.cs

public MainWindow()
{
  InitializeComponent(); 
  var converter = new BrushConverter();
  RdbRedBrush = (Brush)converter.ConvertFromString("#b01f1c");
  RevDeBug.Api.CrashRecorder.Api.ComplexObject(RdbRedBrush);
}
  

To check, if this code worked, you can open it in Visual Studio with RevDeBug IDE Extension installed. If you run it, and open the recording, you should get a similar result: Value prompts - values overlayed on code