Skip to content

Releases: CodeShayk/DataFuse.Net

v3.0.0

30 Mar 21:16
b08cdca

Choose a tag to compare

DataFuse v3.0.0 Release Notes

Release Date: March 30, 2026

DataFuse v3.0.0 is a major release that introduces the new MongoDB adapter, transform hooks, query result caching, and multi-target framework support. This release also completes the project rebrand from Schemio to DataFuse, which includes breaking namespace and package changes.


New Features

MongoDB Adapter

New DataFuse.Adapters.MongoDB package for aggregating data from MongoDB collections alongside SQL, REST API, and Entity Framework sources.

  • Built on MongoDB Driver 3.4.0
  • Implements the same query/engine pattern as other adapters
  • Register via .WithEngine(c => new DataFuse.Adapters.MongoDB.QueryEngine(mongoDatabase))
public class ReviewsMongoQuery : MongoQuery<CollectionResult<ReviewResult>>
{
    protected override Func<IMongoDatabase, Task<CollectionResult<ReviewResult>>> GetQuery(
        IDataContext context, IQueryResult? parentQueryResult)
    {
        var product = (ProductResult)parentQueryResult;
        return async database =>
        {
            var collection = database.GetCollection<ReviewResult>("reviews");
            var reviews = await collection.Find(r => r.ProductId == product.Id).ToListAsync();
            return new CollectionResult<ReviewResult>(reviews);
        };
    }
}

Transform Hooks

Pre and post transformation hooks provide fine-grained control over the data transformation pipeline.

  • PreTransform hooks execute before a transformation and can cancel it via context.Cancel()
  • PostTransform hooks execute after a transformation and can request repetition via context.Repeat()

Query Result Caching

New CacheResultAttribute allows marking expensive query results for automatic caching to improve performance.

Multi-Target Framework Support

All packages (except EntityFramework) now target multiple frameworks:

  • netstandard2.1
  • net8.0
  • net9.0
  • net10.0

DataFuse.Adapters.EntityFramework targets net10.0 only (EF Core 10.0 dependency).


Breaking Changes

Project Rename (Schemio to DataFuse)

All namespaces, packages, and registration APIs have been renamed:

v2.x (Schemio) v3.0.0 (DataFuse)
Schemio.Core (contracts) DataFuse.Adapters.Abstraction
Schemio.Core (impl) DataFuse.Integration
Schemio.SQL DataFuse.Adapters.SQL
Schemio.EntityFramework DataFuse.Adapters.EntityFramework
Schemio.API DataFuse.Adapters.WebAPI

DI Registration

// Before (v2.x)
services.UseSchemio(new SchemioOptionsBuilder() ...);

// After (v3.0.0)
services.UseDataFuse(new DataFuseOptionsBuilder() ...);

Interface Renames

  • ISchemioOptionsIDataFuseOptions
  • SchemioOptionsBuilderDataFuseOptionsBuilder

NuGet Package Names

All package IDs have changed. Update your package references:

Old Package New Package
Schemio.Core DataFuse.Adapters.Abstraction
Schemio.Core DataFuse.Integration
Schemio.SQL DataFuse.Adapters.SQL
Schemio.EntityFramework DataFuse.Adapters.EntityFramework
Schemio.API DataFuse.Adapters.WebAPI

Migration Guide

  1. Update NuGet packages to the new DataFuse.* package names
  2. Update using statements from Schemio.* namespaces to DataFuse.*
  3. Update DI registration from UseSchemio() to UseDataFuse() and SchemioOptionsBuilder to DataFuseOptionsBuilder
  4. Update target framework if needed — packages now support netstandard2.1, net8.0, net9.0, and net10.0

Packages

Package Version Frameworks
DataFuse.Adapters.Abstraction 3.0.0 netstandard2.1, net8.0, net9.0, net10.0
DataFuse.Integration 3.0.0 netstandard2.1, net8.0, net9.0, net10.0
DataFuse.Adapters.SQL 3.0.0 netstandard2.1, net8.0, net9.0, net10.0
DataFuse.Adapters.EntityFramework 3.0.0 net10.0
DataFuse.Adapters.WebAPI 3.0.0 netstandard2.1, net8.0, net9.0, net10.0
DataFuse.Adapters.MongoDB 3.0.0 netstandard2.1, net8.0, net9.0, net10.0

Repository

v2.1.0

16 Aug 14:05
cea0c56

Choose a tag to compare

Release Notes

Changes in Schemio.Core - Targets .Net Framework 4.6.2; .Net Standards 2.0 & 2.1; .Net 9.0.

  • Provides support for Pre and Post transform hooks.

Changes in Schemio.SQL - Targets .Net Framework 4.6.2; .Net Standards 2.1; .Net 9.0.

  • Provides support for Pre and Post transform hooks.

Changes in Schemio.EntityFramework - Targets .Net 9.0.

  • Provides support for Pre and Post transform hooks.

Changes in Schemio.API - Targets .Net Framework 4.6.2; .Net Standards 2.0 & 2.1; .Net 9.0.

  • Provides support for Pre and Post transform hooks.

Developer Guide

Important: Please see Developer Guide here for more details.

v2.0.1

24 May 02:56
6ba3570

Choose a tag to compare

Release Notes

Changes in Schemio.Core - Targets .Net Framework 4.6.2; .Net Standards 2.0 & 2.1; .Net 9.0.

  • Entity Schema renamed to Entity Configuration and requires implementing EntityContfiguration<TEntity>.
  • IRootQuery, IChildQuery, BaseRootQuery<TParameter, TResult> & BaseChildQuery<TParameter,TResult> removed.
  • Both Parent and child queries need to implement BaseQuery<TResult> and provide override for isContextResolved() and ResolveQuery() methods.
  • IoC registration streamlined with fluent interface for container configuration.
  • Renamed IEntityContext to IEntityRequest.

Changes in Schemio.SQL - Targets .Net Framework 4.6.2; .Net Standards 2.1; .Net 9.0.

  • BaseSQLRootQuery<TParameter, TResult> & BaseSQLChildQuery<TParameter, TResult> removed.
  • Need to implement from SQLQuery<TResult> and provide override for GetQuery() method to implement both parent and child queries.

Changes in Schemio.EntityFramework - Targets .Net 9.0.

  • BaseSQLRootQuery<TParameter, TResult> & BaseSQLChildQuery<TParameter, TResult> removed.
  • Need to implement from SQLQuery<TResult> and provide override for GetQuery() method to implement both parent and child queries.

Changes in Schemio.API - Targets .Net Framework 4.6.2; .Net Standards 2.0 & 2.1; .Net 9.0.

  • Supports querying using web apis
  • Provides HttpClient Query Engine.

Developer Guide

Important: Please see v2.0.0 Developer Guide here for more details.

v2.0.0

22 Nov 15:56
f7702f9

Choose a tag to compare

Release Notes

  • Targets .Net 9.0.
  • Breaking changes to Schemio.Core - Please see below.
  • Breaking changes to Schemio.SQL - Please see below.
  • Breaking changes to Schemio.EntityFramework - Please see below.
  • Added new Schemio.API package for supporting web APIs.

Changes in Schemio.Core

  • Entity Schema renamed to Entity Configuration and requires implementing EntityContfiguration<TEntity>.
  • IRootQuery, IChildQuery, BaseRootQuery<TParameter, TResult> & BaseChildQuery<TParameter,TResult> removed.
  • Both Parent and child queries need to implement BaseQuery<TResult> and provide override for isContextResolved() and ResolveQuery() methods.
  • IoC registration streamlined with fluent interface for container configuration.
  • Renamed IEntityContext to IEntityRequest.

Changes in Schemio.SQL & Schemio.EntityFramework

  • BaseSQLRootQuery<TParameter, TResult> & BaseSQLChildQuery<TParameter, TResult> removed.
  • Need to implement from SQLQuery<TResult> and provide override for GetQuery() method to implement both parent and child queries.

New Schemio.API for Http web queries.

  • Supports querying using web apis
  • Provides HttpClient Query Engine.

Developer Guide

Important: Please see v2.0.0 Developer Guide here for more details.

v1.0.0

02 Oct 21:32
5d03992

Choose a tag to compare

Release Notes

  • Targets .Net 8.0

Schemio.Core - Provides core functionality to configure nested queries and transformers. With ability to map schema paths (XPath/JSONPath) to entity's object graph. No QueryEngine provided and requires implementing IQueryEngine to execute IQuery instances.

Release provides core functionality :-

  • IQueryEngine to implement custome query engine
  • BaseRootQuery<> & BaseChildQuery to implement parent/child queries.
  • BaseTransformere<> to implement transformer class.
  • ISchemaPathMatcher to implement custom schema language for mapping object graphs.

Schemio.SQL - Provides schemio with query engine using Dapper to execute SQL queries.

Release provides :-

  • BaseRootSQLQuery<> & BaseChildSQLQuery to implement parent/child dapper queries.
  • QueryEngine with dapper SQL query execution support.

Schemio.EntityFramework - Provides schemio with query engine using Entity Framework to execute SQL queries.

Release provides :-

  • BaseRootSQLQuery<> & BaseChildSQLQuery to implement parent/child entity framework queries.
  • QueryEngine with Entity Framework SQL query execution using DbContext.