diff --git a/src/Umbraco.Core/ObjectResolution/ManyObjectsResolverBase.cs b/src/Umbraco.Core/ObjectResolution/ManyObjectsResolverBase.cs
index e54e6f550b..ad35b81ffb 100644
--- a/src/Umbraco.Core/ObjectResolution/ManyObjectsResolverBase.cs
+++ b/src/Umbraco.Core/ObjectResolution/ManyObjectsResolverBase.cs
@@ -156,7 +156,16 @@ namespace Umbraco.Core.ObjectResolution
/// Gets or sets the used to initialize this object, if any.
///
/// If not null, then LifetimeScope will be ObjectLifetimeScope.HttpRequest.
- protected HttpContextBase CurrentHttpContext { get { return _httpContextGetter == null ? null : _httpContextGetter(); } }
+ protected HttpContextBase CurrentHttpContext
+ {
+ get
+ {
+ var context = _httpContextGetter == null ? null : _httpContextGetter();
+ if (context == null)
+ throw new InvalidOperationException("Cannot use this resolver with lifetime 'HttpRequest' when there is no current HttpContext. Either use the ctor accepting an HttpContextBase, or use the resolver from within a request exclusively.");
+ return context;
+ }
+ }
///
/// Returns the service provider used to instantiate objects