OnTopic 5.2.0 introduces support for response caching (#89), a new ErrorController for HTTP error codes (#91), and improvements to ITopicMappingService performance via optional AttributeDictionary constructors (#99), updates to the internal reflection libraries (#90), and caching of compatible properties (#102). In addition, it also includes a number of internal code improvements, such as adoption of new C# 10 capabilities (#96), including global using directives (#93).
Features
- #89 Response caching is now supported on
TopicController, via OnTopic support for cache profiles - #91 (Re)introduced an
ErrorControllerto fully handle HTTP error handling within ASP.NET Core - #99 Support for
AttributeDictionaryconstructors on view models to improve performance ofITopicMappingService
Improvements
- #90 Improved performance in reflection by use of
Delegate.CreateDelegate() - #90 Significant refactoring of the
OnTopic.Internal.Reflectionclasses around theTypeAccessor(Cache), instead of(Type)MemberInfoCollection(reference) - #101 Allow the
ErrorControllerto be bypassed for static files, thus preferring a lightweight response code instead of a friendly error page - #102 Cache mappings to compatible members on corresponding
Topicclasses (e.g.,ContentTypeDescriptor) viaMemberAccessor.IsCompatible() - #106 Add a SQL constraint to ensure that topics under a given parent topic can't have duplicate keys
For a comprehensive list of features, improvements, and code changes, see Pull Request #108.