public void RemoveFromQueues(string regionName, object key) { var injectionItem = InjectionQueue.FirstOrDefault(x => x.RegionName == regionName && object.Equals(x.Key, key)); injectionItem.Do(x => InjectionQueue.Remove(x)); var persistentInjectionItem = PersistentInjectionQueue.FirstOrDefault(x => x.RegionName == regionName && object.Equals(x.Key, key)); persistentInjectionItem.Do(x => PersistentInjectionQueue.Remove(x)); var navigationItem = NavigationQueue.FirstOrDefault(x => x.RegionName == regionName && object.Equals(x.Key, key)); navigationItem.Do(x => NavigationQueue.Remove(x)); }
public void PutToInjectionQueue(string regionName, object key, Func <object> factory, string viewName, Type viewType) { InjectionQueue.Add(new InjectionItem(regionName, key, factory, viewName, viewType)); }