FractalDataWorks.Data.DataSets
0.9.5-alpha.1037
dotnet add package FractalDataWorks.Data.DataSets --version 0.9.5-alpha.1037
NuGet\Install-Package FractalDataWorks.Data.DataSets -Version 0.9.5-alpha.1037
<PackageReference Include="FractalDataWorks.Data.DataSets" Version="0.9.5-alpha.1037" />
<PackageVersion Include="FractalDataWorks.Data.DataSets" Version="0.9.5-alpha.1037" />
<PackageReference Include="FractalDataWorks.Data.DataSets" />
paket add FractalDataWorks.Data.DataSets --version 0.9.5-alpha.1037
#r "nuget: FractalDataWorks.Data.DataSets, 0.9.5-alpha.1037"
#:package FractalDataWorks.Data.DataSets@0.9.5-alpha.1037
#addin nuget:?package=FractalDataWorks.Data.DataSets&version=0.9.5-alpha.1037&prerelease
#tool nuget:?package=FractalDataWorks.Data.DataSets&version=0.9.5-alpha.1037&prerelease
FractalDataWorks.Data.DataSets
Concrete implementations of dataset operations including in-memory datasets, query execution, and transformation pipelines.
Overview
Implements Data.DataSets.Abstractions with:
- InMemoryDataSet: Efficient in-memory dataset implementation
- Query Engine: Execute LINQ-style queries on datasets
- Aggregation Engine: Perform grouping and aggregation
- Join Operations: Inner, left, right, and full outer joins
- Format Conversions: Convert between data formats
Target Frameworks: .NET Standard 2.0, .NET 10.0 Dependencies: FractalDataWorks.Data.DataSets.Abstractions
Key Classes
InMemoryDataSet
public class InMemoryDataSet : IDataSet
{
public InMemoryDataSet(string name);
public IGenericResult AddTable(IDataTable table);
public IGenericResult<IDataTable> GetTable(string name);
}
DataSetQuery
public class DataSetQuery : IDataSetQuery
{
public IGenericResult<IDataSet> Filter(Expression<Func<IDataRow, bool>> predicate);
public IGenericResult<IDataSet> Sort(string columnName, bool ascending = true);
}
DataSetJoin
public class DataSetJoin
{
public IGenericResult<IDataTable> InnerJoin(
IDataTable left,
IDataTable right,
string leftKey,
string rightKey);
}
Usage
var dataSet = new InMemoryDataSet("Sales");
dataSet.AddTable(ordersTable);
dataSet.AddTable(customersTable);
var query = new DataSetQuery(dataSet);
var filtered = query
.Filter(row => row.GetValue<decimal>("Total") > 1000)
.Sort("OrderDate", ascending: false);
Performance
- In-memory operations optimized for datasets up to 100K rows
- Lazy evaluation for query pipelines
- Indexing support for frequent queries
- Parallel execution for aggregations
Summary
FractalDataWorks.Data.DataSets provides efficient in-memory dataset implementations with LINQ-style query capabilities, enabling powerful data manipulation without database dependencies.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- FractalDataWorks.Configuration (>= 0.9.5-alpha.1037)
- FractalDataWorks.Data.DataSets.Abstractions (>= 0.9.5-alpha.1037)
- FractalDataWorks.MessageLogging.Abstractions (>= 0.9.5-alpha.1037)
- FractalDataWorks.Messages (>= 0.9.5-alpha.1037)
- FractalDataWorks.Results (>= 0.9.5-alpha.1037)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.0-rc.2.25502.107)
- Microsoft.Extensions.Configuration.Binder (>= 10.0.0-rc.2.25502.107)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.0-rc.2.25502.107)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on FractalDataWorks.Data.DataSets:
| Package | Downloads |
|---|---|
|
FractalDataWorks.Data.Execution
Development tools and utilities for the FractalDataWorks ecosystem. Build: |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.9.5-alpha.1037 | 0 | 12/1/2025 |
| 0.9.5-alpha.1008 | 116 | 11/25/2025 |
| 0.9.5-alpha.1007 | 115 | 11/25/2025 |
| 0.9.5-alpha.1006 | 112 | 11/25/2025 |
| 0.9.1-alpha.1037 | 111 | 11/25/2025 |
| 0.9.1-alpha.1036 | 107 | 11/25/2025 |
| 0.9.1-alpha.1033 | 118 | 11/25/2025 |
| 0.9.0-alpha.1011.ged0a6c6e98 | 346 | 11/18/2025 |
| 0.9.0-alpha.1010.gecd88aac50 | 343 | 11/18/2025 |
| 0.9.0-alpha.1009.g7f6817e985 | 339 | 11/18/2025 |
| 0.9.0-alpha.1006.gf287016c0c | 331 | 11/18/2025 |
| 0.8.0-alpha.1011 | 340 | 11/18/2025 |
| 0.7.0-alpha.1022 | 135 | 11/3/2025 |
| 0.7.0-alpha.1021 | 134 | 11/3/2025 |
| 0.7.0-alpha.1008 | 109 | 11/2/2025 |
| 0.7.0-alpha.1006 | 139 | 10/30/2025 |
| 0.7.0-alpha.1005 | 134 | 10/30/2025 |
| 0.7.0-alpha.1004 | 132 | 10/30/2025 |
| 0.7.0-alpha.1001 | 138 | 10/29/2025 |
| 0.6.0-alpha.1006 | 132 | 10/29/2025 |
| 0.6.0-alpha.1005 | 134 | 10/28/2025 |
| 0.6.0-alpha.1004 | 126 | 10/28/2025 |
| 0.6.0-alpha.1002 | 133 | 10/28/2025 |