Paul Krill
Editor at Large

Microsoft .NET Community Toolkit adds .NET 8, NativeAOT support

news
Aug 29, 20242 mins
Development Libraries and FrameworksMicrosoft .NETSoftware Development

Version 8.3 of the platform-agnostic toolkit and MVVM library for .NET development also brings performance improvements and bug fixes.

tools / toolkit
Credit: CC0

Microsoft has released version 8.3 of the .NET Community Toolkit, which brings support for .NET 8 and NativeAOT to all libraries as well as performance improvements.

The version 8.3 update to the toolkit was announced August 27. The platform-agnostic successor to the Windows Community Toolkit, the .NET Community Toolkit features helpers, extensions, custom controls, and APIs for .NET developers, agnostic of any specific UI platform. Source code for the toolkit can be found on GitHub.

.NET 8  is the latest production release of .NET, having been issued last November.

With the .NET Community Toolkit 8.3 release, Microsoft said that APIs across all packages have been annotated to fully support trimming and AOT compatibility, to ensure that any part of the toolkit goes smoothly even in those scenarios. Also in the version 8.3 release, the MVVM Toolkit adds support for the net8.0-windows10.0.17763.0 target, to be fully trim and AOT-compatible with WinAppSDK (WinUI 3). Adding this target framework ensures that all types that might be marshaled to WinRT will have all the necessary interop code generated for them, Microsoft said.

Also in version 8.3, there are more performance improvements for the MVVM toolkit. The focus was on making support for INotifyPropertyChanging fully pay-for-play, Microsoft said. Thus, when this interface is not needed, there will be no additional overhead because of it. When this property is set to false, all code associated with INotifyPropertyChanging in ObservableObject will be trimmed out.

Among the bug fixes in the update, a fix has been made to a situation in which generated OnPropertyChanging methods were not being invoked for dependent properties when using [NotifyPropertyChangedFor]. And the ObservableValidator.HasError property will no longer automatically show up in table views in frameworks that dynamically generate columns from declared properties. Version 8.3 of the .NET Community Toolkit follows last year’s 8.2 release, which also brought new features to MVVM and performance improvements to MVVM source generators.