MeineGlock.ListToTableDisplay
1.0.3
dotnet add package MeineGlock.ListToTableDisplay --version 1.0.3
NuGet\Install-Package MeineGlock.ListToTableDisplay -Version 1.0.3
<PackageReference Include="MeineGlock.ListToTableDisplay" Version="1.0.3" />
paket add MeineGlock.ListToTableDisplay --version 1.0.3
#r "nuget: MeineGlock.ListToTableDisplay, 1.0.3"
// Install MeineGlock.ListToTableDisplay as a Cake Addin #addin nuget:?package=MeineGlock.ListToTableDisplay&version=1.0.3 // Install MeineGlock.ListToTableDisplay as a Cake Tool #tool nuget:?package=MeineGlock.ListToTableDisplay&version=1.0.3
List to Table Formatter for .NET
The List to Table Formatter for .NET is a versatile library designed to convert lists of objects into well-formatted table displays. It supports customizable padding, border styles, and header text styles to enhance readability. Ideal for console applications and logging, this library ensures your data is presented in a clear and structured manner.
Installation
You can install the lastest package via NuGet:
dotnet add package MeineGlock.ListToTableDisplay --version 1.0.3
Usage
Basic example of how to use the List to Table Formatter: See the ConsoleDemo for more advanced implementation.
using ListToTableDisplay;
var people = new List<Person>
{
new() { Name = "John", Age = 25, City = "New York" },
new() { Name = "Jane", Age = 27, City = "Chicago" },
new() { Name = "Tom", Age = 30, City = "Los Angeles" },
new() { Name = "Lucy", Age = 35, City = "San Francisco" }
};
ListToTableDisplay listToTableDisplay = new();
// Cast to an object list and pass to the DisplayTable method.
Console.WriteLine(listToTableDisplay.DisplayTable(people.Cast<object>().ToList()));
Customization
You can customize the table display by setting various properties on the TableDisplay
object. For example, you can change the padding, border style, and header text style:
ListToTableDisplay.ListToTableDisplay listToTableDisplay = new()
{
// Left and right paddding. Value of 1 to 10, 1 is the default.
Padding = 1,
// Split the header text by PascalCase or underscore. None is the default.
HeaderTextStyle = ListToTableDisplay.HeaderTextStyle.SplitPascalCase,
// Set the border style to classic or modern. Modern is the default.
BorderStyle = ListToTableDisplay.BorderStyle.Classic,
};
Formatting Notes
- A monospaced font is required for proper table formatting.
- UTF-8 encoding is required for the modern table format to display correctly.
- If your console is not formatting the modern table correctly, try setting the console to output UTF-8.
Console.OutputEncoding = System.Text.Encoding.UTF8;
Output Examples
Terminal
Notepad
Word
Home Page
https://github.com/meineGlock20/ListToTableDisplay
License
This project is licensed under the MIT License.
https://github.com/meineGlock20/ListToTableDisplay/blob/main/ListToTableDisplay/LICENSE
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 was computed. 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 was computed. |
.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. |
-
.NETStandard 2.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Initial Release