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();

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();

Nested Objects
Complex object hierarchies are displayed with proper indentation:
new
{
Company = "Acme",
Employees = new[]
{
new { Name = "John", Department = "Engineering" }
}
}.Dump();

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