AspNetCore 1.4.0 & 5.7.0 & EF Core 4.0.0
AspNetCore 1.4.0
New Features
- Fully tested on .NET 10
- Return status code 400 (Bad Request) on parameter errors such as null when null is not allowed (#551, #546)
- Added support for XML serialization as an alternative to binary serialization format (#546)
-
Server can now intelligently handle both binary and XML content types
var builder = WebApplication.CreateBuilder(args); builder.Services.AddOpenRiaServices(o => { } ) .AddXmlSerialization();
-
Bugfixes
- #553 - Buffer management bug for responses - small probability but HIGH SEVERITY bug
- #552 - Incorrect decoding of string parameters
EntityFrameworkCore 4.0
- Add .NET 10 target framework compiled against EF Core 10 (#549)
- NOTE: EF Core 10 contains BREAKING CHANGES, ensure all other assemblies are compiled against EntityFrameworkCore 10
Core libraries (5.7.0)
Major Features
-
DateOnly and TimeOnly (#539, #540)
DateOnly and TimeOnly are now fully supported primitive type, but REQUIRES .NET 10 runtime for serialisation.
-
XML Support
Added a new class
OpenRiaServices.Client.DomainClients.XmlHttpDomainClientFactorythat can be used to enable text-based XML communication with the server.Sample usage:
DomainContext.DomainClientFactory = new XmlHttpDomainClientFactory(baseUri, httpClientFactory);
Server
EntityAssociationAttributeshould now be used instead ofAssociationAttribute(which is obsolete on .NET)- While there is code for backwards compatibility, please update all code to use the new attribute since backwards compatibility may be removed in the future
Client
- Improves clients NotFound errors (will now use OperationErrorStatus.NotFound)
- Fix handling of empty string, when returned from invoke method (POST), it was incorrectly converted to
nullon client
General Improvements
- Fixed typo in OutputCacheAttribute.cs (#528) by @icnocop
- Replace ReaderWriterLockSlim with ConcurrentDictionary for improved perf in DataContractSurrogateGenerator (#529)
- Updated some dependencies
- Update CI pipelines - running VS 2026 and compiling using C#14
- Running many tests on .NET 10
What's Changed
- Update gitversion task to v3 by @Daniel-Svensson in #524
- AspNetCore: Improve HTTP Status code on Submit failed and wrong ContentType by @Daniel-Svensson in #526
- Fixed typo in OutputCacheAttribute.cs by @icnocop in #528
- Replace ReaderWriterLockSlim with ConcurrentDictionary for improved perf in DataContractSurrogateGenerator by @Daniel-Svensson in #529
- Update codeql.yml by @Daniel-Svensson in #532
- Bump Microsoft.Build.Framework and Microsoft.Build.Utilities.Core by @dependabot[bot] in #530
- Add Dependabot configuration to exclude archive directory by @Copilot in #536
- Bump Microsoft.Build.Framework and Microsoft.Build.Utilities.Core by @dependabot[bot] in #534
- Move more DomainContext tests to Client.Tests by @Daniel-Svensson in #541
- Update nuget packages for test (and MsBuild locator for codegen) by @Daniel-Svensson in #543
- Make tests more compatible with net10 and update CodeQL by @fremo917 in #538
- Update MSTest to 3.11.1 by @Daniel-Svensson in #545
- Run AspNetCore tests on .NET 10 and .NET 8 by @Daniel-Svensson in #542
- Add debugging instructions for code generation to CONTRIBUTING.md by @Copilot in #544
- Target EFCore 10 for .NET 10 by @Daniel-Svensson in #549
- DateOnly and TimeOnly support #540 by @fremo917 in #539
- AspNetCore: Return statuscode 400: bad request on parameter errors by @Daniel-Svensson in #551
- Update to C# 13 by @Daniel-Svensson in #550
- Use EntityAssociationAttribute server side by @Daniel-Svensson in #512
- Use new VS 2026 pipeline by @Daniel-Svensson in #559
- Add Text Xml format and make serialisationformat pluggable by @Daniel-Svensson in #546
New Contributors
- @dependabot[bot] made their first contribution in #530
- @fremo917 made their first contribution in #538
Full Changelog: v5.6.0...v5.7.0