v4.1.0
- Documentation: Added upgrade information to the readme file of each DI package.
- Documentation: Changed description of MvcSiteMapProvider legacy NuGet package to indicate it is now obsolete.
- Bug: Incorrectly resolved URLs in sitemaps XML when MvcSiteMapProvider is in sub application (#222).
- Bug: Fix for custom AuthorizeAttribute implementations that are sealed or have a non-public constructor (#156 and #220). Important Change: If your custom AuthorizeAttribute overrides
OnAuthorization()
, you must ensure thatfilterContext.Result
is not null when authorization fails and is null when authorization succeeds. - Feature: Refactored IRequestCache to inherit from ICache so other types of caches can be swapped.
- Bug: Added exception message in the case where the same key is added to RouteValues and PreservedRouteParameters on the same node.
Important Note: If you are using SimpleInjector, you must remove the following code from your DI module, or you will get compile time exceptions after installing this (or a future) version.
container.RegisterSingle<AuthorizeAttributeAclModule>(() => new AuthorizeAttributeAclModule(
container.GetInstance<IMvcContextFactory>(),
container.GetInstance<IObjectCopier>(),
container.GetInstance<IControllerDescriptorFactory>(),
container.GetInstance<IControllerBuilder>(),
container.GetInstance<IAuthorizeAttributeBuilder>(),
container.GetInstance<IGlobalFilterProvider>()));