Furion Framework Release Notes: New Features, Breaking Changes, Bug Fixes and Documentation Updates
The latest Furion release introduces numerous new templates and utilities for MVC, WebAPI, Razor, and Blazor, updates core packages, refactors service resolution and authorization, fixes a wide range of bugs, and refreshes documentation for quick start, security, and database operations.
New Features
Added MVC template scaffolding Fur.Template.Mvc, WebAPI template Fur.Template.Api, combined MVC/WebAPI template Fur.Template.App, Razor Pages template Fur.Template.Razor, Blazor template Fur.Template.Blazor, default DB context method Db.GetDbContext(), global HttpContext accessor HttpContextUtility.GetCurrentHttpContext(), service resolution method App.GetRequiredService<>, object extension object.GetService<>, policy‑based authorization pipeline, JWT validation helper JWTEncryption.ValidateJwtBearerToken, DateTime JSON converter, global DB context configurations, latest Pomelo MySQL package for .NET 5, DateTime/DateTimeOffset serialization settings, Swagger JWT global parameters, customizable InsertOrUpdate conditions, lowercase string field naming, string comparison utilities, global exception message handling, and Insert/Update ignore‑null functionality.
Breaking Changes
Updated Mapster to version 7.0.0, renamed project from Fur to Furion, changed Db.GetRequestDbContext<>() to Db.GetDbContext<>() and added Db.GetDuplicateDbContext<>(), moved PagedList to System.Collections.Generic, renamed App.Services to App.ServiceProvider, removed App.ApplicationServices, App.GetRequestService<>(), non‑Web host injection extensions, and the manual JWT validation method ValidateJwtBearer. Refactored service resolution logic for better performance and aligned authorization core with Microsoft standards.
Bug Fixes
Fixed compilation errors in generated scaffolds, corrected non‑virtual Tenant properties, resolved Dockerfile naming issues, added missing configuration for services.AddFriendlyException(), addressed DB context pool release and high‑concurrency memory leaks, fixed empty‑data Sql proxy exceptions, corrected UnitOfWork multi‑DB release bugs, resolved 403 errors in custom role authorization, handled empty exceptions in Oops.Oh, fixed encoding issues in generated files, restored Swagger file‑upload button visibility, standardized result status code casing, fixed Chinese character garbling when result normalization is disabled, captured async MySQL exceptions, corrected missing connection string warnings in cli.ps1, repaired non‑functional ApiSears.ControllerEnd, fixed serialization case issues in RemoteRequest, and addressed null endpoint exceptions in HttpContext.GetEndpoinet().
Other Changes
Made all properties of EntityBase and Entity virtual, improved JWT parsing performance, added support for C# 9.0 syntax, removed unused code, performed minor performance tweaks, enhanced MD5 encryption speed, and closed several inactive issues.
Documentation Updates
Updated quick‑start guide, security authentication, database, DB context, and multi‑database operation documents.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Laravel Tech Community
Specializing in Laravel development, we continuously publish fresh content and grow alongside the elegant, stable Laravel framework.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
