Features

Dumpify provides a rich set of features for debugging and visualizing data in .NET console applications.

Feature Overview

Feature Description
Circular References Safe handling of circular object references
Collections Smart rendering of arrays, lists, dictionaries
Member Filtering Control which properties and fields are displayed
Custom Type Handlers Define custom rendering for specific types
Labels Add descriptive labels to output
Output Targets Multiple output destinations

Quick Feature Highlights

Beautiful Table Rendering

Dumpify renders objects as formatted tables with color-coded values:

new Person { Name = "John", Age = 30 }.Dump();

Single Object

Collection Support

Arrays, lists, and dictionaries are rendered as organized tables:

var people = new[] 
{
    new Person { Name = "John", Age = 30 },
    new Person { Name = "Jane", Age = 25 }
};
people.Dump();

Array Of Objects

Nested Objects

Complex object hierarchies are displayed with proper indentation:

new 
{
    Company = "Acme",
    Employees = new[] 
    { 
        new { Name = "John", Department = "Engineering" }
    }
}.Dump();

Nested Objects

Circular Reference Protection

Objects with circular references are safely handled:

var node = new Node { Value = 1 };
node.Next = node;  // Circular reference
node.Dump();       // Won't crash!

Method Chaining

Dump methods return the original object for seamless LINQ integration:

var result = GetUsers()
    .Dump("Raw")
    .Where(u => u.IsActive)
    .Dump("Active")
    .OrderBy(u => u.Name)
    .ToList();

Multiple Output Targets

Send output to different destinations:

obj.Dump();        // Default output
obj.DumpConsole(); // Console
obj.DumpDebug();   // Debug window
obj.DumpTrace();   // Trace listeners

string text = obj.DumpText();  // Return as string

Colorful Output

Values are color-coded by type for easy reading:

  • Strings in green
  • Numbers in yellow
  • Booleans in blue/red
  • Null values in gray

Customizable

Control every aspect of the output:

DumpConfig.Default.MaxDepth = 3;
DumpConfig.Default.ColorConfig.NullValueColor = "#FF0000";
DumpConfig.Default.MembersConfig.IncludeFields = true;

Feature Categories

Display Features

  • Labels - Add context with descriptive headers
  • Table Formatting - Configure borders, headers, alignment
  • Color Themes - Customize colors for all value types
  • Type Names - Control how type names are displayed

Data Control

  • Member Filtering - Include/exclude properties, fields, private members
  • Circular References - Safe handling of recursive structures
  • Collections - Special handling for collections and dictionaries
  • Depth Limiting - Prevent excessive nesting

Extensibility

  • Custom Type Handlers - Define how specific types are rendered
  • Output Targets - Console, Debug, Trace, or custom outputs
  • Custom Renderers - Implement your own rendering engine

See Also


Table of contents