5.1.0
This represents the official release for ASP.NET Core with support for .NET 5.0 and .NET 6.0.
📣 Aside from servicing,
5.1.x
marks the end of the packages and naming under theMicrosoft.AspNet*
prefixes. For more background, see the announcement and roadmap. Despite months of communicate with Microsoft and the .NET Foundation to re-enable publishing permissions for the NuGet packages, I'm still unable to. At this point, I suspect it may never happen and this release contains the official, signed packages which you can integrate into your own NuGet feeds.
This release has been a long time coming, but has been stymied due to administrative changes in moving the project under the .NET Foundation. Now that the process is complete, you can expect fluid releases once more. The following highlights high-level changes since 5.0.0
. For the complete list, please review the change log.
Features
No significant new features in this release
Fixes
All Platforms
ASP.NET Web API
- Avoid
LockRecursionException
(#703)
ASP.NET Web API with OData
- Fix route template building optimizations (#689, #710)
- Correct binding source for
[FromODataUri]
(#693, #729, #737) - Disambiguate OData actions by parameters (#697)
- Support cast routing convention (#738)
- Handle
PostTo
navigation properties (#742) - Fix all functions versus
all
function (#758) - Use assembly-qualified type names for EDM type resolution (#854)
ASP.NET Core
- Handle on-demand initialization of
IApiVersioningFeature
(#704) - Clear
IApiVersioningFeature
on pipeline reentry (#748, #749) - Limit
Allow
for405
to actions in the same API version (#795) - Handle candidates that differ by route constraint only (#797)
ASP.NET Core with OData
- Fix route template building optimizations (#689, #710)
- Correct binding source for
[FromODataUri]
(#693, #729, #737) - Handle DI service registration order (#694)
- Copy endpoint metadata (#695)
- Disambiguate OData actions by parameters (#697)
- Support cast routing convention (#738)
- Handle
PostTo
navigation properties (#742) IEdmModelSelector
leveragesIApiVersionSelector
(#745)- Fix all functions versus
all
function (#758) - Use assembly-qualified type names for EDM type resolution (#854)
Enhancements
All Platforms
- Added
IControllerNameConvention
(#734) - Do not discover API versions which are only mapped (#735)
- Update build status badge (#775)
ASP.NET Web API
- Minor optimization to
IUrlFactory
implementation (#720)
ASP.NET Core
- Report API versions for ambiguous request in legacy routing
- Add support for .NET 6.0
Breaking Changes
No known breaking changes
Additional Release Notes
ASP.NET Core with OData
- The official OData release is now 8.x, but due to the required changes this release targets 7.x with .NET Core 3.1
- The
6.0
support for OData has been rebuilt from the ground up and supports 8.x along with .NET Core 3.1 and .NET 6.0
Contributors
Big thank you to the community for contributing:
- @xavierjohn - new examples
- @aleks-ivanov - fix/improve build and code analysis
- @GrayPockets - Allow ICollectionModelBinder as registered parameters
- @icnocop - fixed #738