Fixes #289, bug in MvcSiteMapProvider.Web install.ps1 where missing appSettings, system.web, system.web.webPages.razor, and system.webServer elements were not being added to the configuration element in the XML. Also fixed logic in install.ps1 and uninstall.ps1 so it will install or uninstall the MVC >= 4 sections without having to update the code for future versions of MVC.
Updated MvcSiteMapProvider.Shared.nuspec to ensure that MvcSiteMapProvider.Web 4.5.2 (with the bug fix for #289) is installed in new projects.
Fixed DI modules so the comment about not copying the demo settings into your project isn't included in the post-processed module files.
Updated Mvc.sitemap files in the sample projects to use the MvcSiteMapProvider.xsd file in the MvcSiteMapProvider project so there are not multiple copies of the XSD in the solution.
Fix for error caused by no guard to check if the startingNode parameter is null in the MenuHelper.GetNodeAtLevel() method.
Fixed bug where explicit URL nodes and non-clickable nodes were being included in the route matching logic. Routes should never match in these cases.
Fixes #291
- Throw exception in the case where a specified dynamic node provider doesn't match.
- Convert .NET type string for dynamic node providers, visibility providers, and URL resolvers to .NET type before making comparison so that any valid variants of a .NET type string (including fully-qualified names, for strong naming) can be used.
- Reworked the logic of dynamic node, visibility provider, and URL resolver strategy classes so the AppliesTo() method is always called including the case where the providerName is empty string. This allows that case to be taken into account for custom providers.