v4.1.0
The 4.1.0 release introduces bug fixes for the SitemapController, transaction support for certain database operations, unified support between TopicMappingService and ReverseTopicMappingService, as well as an update to how AttributeValue objects are created in order to supports merging topics.
New Features
- The
SitemapControllernow compresses the XML output by default (6a5f671). This can optionally be disabled by calling it with?Indent=true. - The
SqlTopicRepositorynow retrieves the preciseVersionfor each attribute, and sets that value to theAttributeValueobject (a83b844). This enables support for merging topics based on timestamp as part of the new OnTopic-Data-Transfer library. - The
TopicMappingServicenow supports new attributes originally introduced forReverseTopicMappingService(8e56be8). Notably, this includes support for[MapToParent]and[DisableMapping]. Critically,[MapToParent]allows attributes from a topic to be mapped to complex object types used for view model properties.. - The
MoveTopicandDeleteTopicstored procedures now implement table locks and transactions to prevent potential database corruption issues during concurrent updates (a16ea48). While a rare scenario, the potential consequences are sever. - The database project now includes a new
ValidateHierarchystored procedure (a16ea48), which allows the nested set hierarchy to be validated to ensure that no corruption has taken place.
Bug Fixes
- The
SitemapControllernow renders the output asUTF-8not the default ofUTF-16(32e8289). This maintains compatibility with the Sitemap.org specification which mandatesUTF-8.
Maintenance
- Most NuGet package dependencies have either been removed or marked as
<PrivateAssets />(87b3034). This reduces the number of dependencies carried forward to downstream consumers.