public void StartRequestLevelContainer() { string key = IoCContainerPerRequestKey; UnityIoC child = new UnityIoC(container.CreateChildContainer()); UnityPerRequestHttpModule.AddToContext(key, child); }
public override void RemoveValue() { var disposable = GetValue() as IDisposable; disposable?.Dispose(); UnityPerRequestHttpModule.SetValue(key, null); }
public void ShutdownRequestLevelContainer() { try { string key = IoCContainerPerRequestKey; UnityPerRequestHttpModule.RemoveFromContext(key); } catch { } }
public object ResolveForRequest(Type t) { string key = IoCContainerPerRequestKey; UnityIoC child = (UnityIoC)UnityPerRequestHttpModule.GetValueFromContext(key); if (child != null) { object o = child.Resolve(t); return(o); } return(null); }
public T ResolveForRequest <T>() { try { string key = IoCContainerPerRequestKey; UnityIoC child = (UnityIoC)UnityPerRequestHttpModule.GetValueFromContext(key); if (child != null) { T o = child.container.Resolve <T>(); return(o); } } catch (Exception ex) { return(default(T)); } return(default(T)); }
public override void SetValue(object newValue) { UnityPerRequestHttpModule.SetValue(key, newValue); }
public override object GetValue() { return(UnityPerRequestHttpModule.GetValue(key)); }