TreeSharp.ex
1.0.3
dotnet add package TreeSharp.ex --version 1.0.3
NuGet\Install-Package TreeSharp.ex -Version 1.0.3
<PackageReference Include="TreeSharp.ex" Version="1.0.3" />
paket add TreeSharp.ex --version 1.0.3
#r "nuget: TreeSharp.ex, 1.0.3"
// Install TreeSharp.ex as a Cake Addin #addin nuget:?package=TreeSharp.ex&version=1.0.3 // Install TreeSharp.ex as a Cake Tool #tool nuget:?package=TreeSharp.ex&version=1.0.3
TreeSharp.ex
TreeSharp is a C# class library that simplifies working with tree structures in your code. With TreeSharp, you can easily build a list of items as a tree, and retrieve all children, parents, and leaves of a specific item within that tree.
Kindly to check all change history in Github repository commits
Features
GetTree
: builds a tree from a list of itemsGetChildren
: retrieves all children of a specific item in the treeGetParents
: retrieves all parents of a specific item in the treeGetLeaves
: retrieves all leaves (nodes with no children) of the tree
Installation
- You can install TreeSharp via NuGet package manager. Simply search for "TreeSharp.ex" and click "Install".
- You can install TreeSharp via command in the Package Manager Console:
Install-Package TreeSharp.ex
Usage
Import the TreeSharp namespace in your C# project:
using TreeSharp.ex;
To build a tree from a list of items, use the
GetTree
extension method:var tree = items.GetTree(selector: item => item.Id, parent_selector: item => item.ParentId);
To retrieve all children of a specific item, use the
GetChildren
extension method:var children = item.GetChildren(selector: node => node.Id, parent_selector: node => node.ParentId);
To retrieve all parents of a specific item, use the
GetParents
extension method:var parents = item.GetParents(selector: node => node.Id, parent_selector: node => node.ParentId);
To retrieve all leaves of the tree, use the
GetLeaves
extension method:var leaves = tree.GetLeaves(selector: node => node.Id, parent_selector: node => node.ParentId);
Required Parameters:
selector
: represents the unique identifier of the node.parent_selector
: represents the identifier of the parent node.
Optional Parameters:
start
: Represents the root node (could be null) or a node to start from.include_start_node
: Flag to determine whether to include the start value with the result or not.depth
: The depth level of building the tree or retrieving parents/children.
Contributing
Contributions are always welcome! If you find a bug or have a feature request, please open an issue. Pull requests are also accepted.
License
TreeSharp is Free Forever
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. 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. |
-
net6.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.