Dumpify 0.6.5
dotnet add package Dumpify --version 0.6.5
NuGet\Install-Package Dumpify -Version 0.6.5
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Dumpify" Version="0.6.5" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Dumpify --version 0.6.5
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Dumpify, 0.6.5"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Dumpify as a Cake Addin
#addin nuget:?package=Dumpify&version=0.6.5
// Install Dumpify as a Cake Tool
#tool nuget:?package=Dumpify&version=0.6.5
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Dumpify
Improve productivity and debuggability by adding .Dump()
extension methods to Console Applications.
Dump
any object in a structured and colorful way into the Console, Trace, Debug events or your own custom output.
Features
- Dump any object in a structured, colorful way to Console, Debug, Trace or any other custom output
- Support Properties, Fields and non-public members
- Support max nesting levels
- Support circular dependencies and references
- Support styling and customizations
- Highly Configurable
- Support for different output targets: Console, Trace, Debug, Text, Custom
- Fast!
Examples:
Anonymous types
new { Name = "Dumpify", Description = "Dump any object to Console" }.Dump();
Support nesting and circular references
var moaid = new Person { FirstName = "Moaid", LastName = "Hathot", Profession = Profession.Software };
var haneeni = new Person { FirstName = "Haneeni", LastName = "Shibli", Profession = Profession.Health };
moaid.Spouse = haneeni;
haneeni.Spouse = moaid;
moaid.Dump();
//You can define max depth as well, e.g `moaid.Dump(maxDepth: 2)`
Support for Arrays, Dictionaries and Collections
var arr = new[] { 1, 2, 3, 4 }.Dump();
var arr2d = new int[,] { {1, 2}, {3, 4} }.Dump();
new Dictionary<string, string>
{
["Moaid"] = "Hathot",
["Haneeni"] = "Shibli",
["Eren"] = "Yeager",
["Mikasa"] = "Ackerman",
}.Dump();
You can turn on or off fields and private members
public class AdditionValue
{
private readonly int _a;
private readonly int _b;
public AdditionValue(int a, int b)
{
_a = a;
_b = b;
}
private int Value => _a + _b;
}
new AdditionValue(1, 2).Dump(members: new MembersConfig { IncludeFields = true, IncludeNonePublicMembers = true });
You can turn on or off row separators and a type column
//globally
DumpConfig.Default.TableConfig.ShowMemberTypes = true;
DumpConfig.Default.TableConfig.ShowRowSeparators = true;
new { Name = "Dumpify", Description = "Dump any object to Console" }.Dump();
//or Per dump
new { Name = "Dumpify", Description = "Dump any object to Console" }.Dump(tableConfig: new TableConfig { ShowRowSeparators = true, ShowMemberTypes = true });
You can set custom labels or auto-labels
new { Description = "You can manually specify labels to objects" }.Dump("Manual label");
//Set auto-label globally for all dumps if a custom label wasn't provider
DumpConfig.Default.UseAutoLabels = true;
new { Description = "Or set labels automatically with auto-labels" }.Dump();
You can customize colors
var package = new { Name = "Dumpify", Description = "Dump any object to Console" };
package.Dump(colors: ColorConfig.NoColors);
package.Dump(colors: new ColorConfig { PropertyValueColor = new DumpColor(Color.RoyalBlue)});
You can turn on or off type names, headers, lables and much more
var moaid = new Person { FirstName = "Moaid", LastName = "Hathot", Profession = Profession.Software };
var haneeni = new Person { FirstName = "Haneeni", LastName = "Shibli", Profession = Profession.Health };
moaid.Spouse = haneeni;
haneeni.Spouse = moaid;
moaid.Dump(typeNames: new TypeNamingConfig { ShowTypeNames = false }, tableConfig: new TableConfig { ShowTableHeaders = false });
There are multiple output options (Console, Trace, Debug, Text) or provide your own
var package = new { Name = "Dumpify", Description = "Dump any object to Console" };
package.Dump(); //Similar to `package.DumpConsole()` and `package.Dump(output: Outputs.Console))`
package.DumpDebug(); //Dump to Visual Studio's Debug source
package.DumpTrace(); //Dump to Trace
var text = package.DumpText(); //The table in a text format
using var writer = new StringWriter();
package.Dump(output: new DumpOutput(writer)); //Custom output
Every configuration can be defined per-Dump or globally for all Dumps, e.g:
DumpConfig.Default.TypeNamingConfig.UseAliases = true;
DumpConfig.Default.TypeNamingConfig.ShowTypeNames = false;
DumpConfig.Default.ColorConfig.TypeNameColor = Color.Gold;
DumpConfig.Default.MaxDepth = 3;
//Much more...
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 is compatible. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETStandard 2.0
- Spectre.Console (>= 0.48.0)
-
.NETStandard 2.1
- Spectre.Console (>= 0.48.0)
-
net8.0
- Spectre.Console (>= 0.48.0)
NuGet packages (4)
Showing the top 4 NuGet packages that depend on Dumpify:
Package | Downloads |
---|---|
rna.Base.Extensions
Number, String, Enum, Expression Extensions and Object Property Filters |
|
EluciusFTW.SpectreCoff
A thin, opinionated wrapper around Spectre.Console in FSharp. |
|
FluentConsole.Templates
提供「现代化的控制台应用的开发体验」脚手架,能像 Web 应用那样很优雅地整合各种组件,包括依赖注入、配置、日志等功能。 |
|
ProduceSelf.Base
修复序列化列表 |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
0.6.5 | 9,376 | 2/17/2024 |
0.6.4 | 4,649 | 12/30/2023 |
0.6.3 | 4,412 | 12/4/2023 |
0.6.2 | 116 | 12/4/2023 |
0.6.1 | 1,717 | 11/25/2023 |
0.6.0 | 19,008 | 7/17/2023 |
0.5.4 | 11,909 | 5/17/2023 |
0.5.3 | 421 | 5/8/2023 |
0.5.2 | 490 | 4/15/2023 |
0.5.1 | 179 | 4/14/2023 |
0.5.0 | 172 | 4/14/2023 |
0.4.1 | 248 | 4/7/2023 |
0.4.0 | 173 | 4/6/2023 |
0.3.0 | 178 | 4/3/2023 |
0.2.0 | 173 | 4/3/2023 |
0.1.0 | 226 | 3/29/2023 |