public void UpdateHistory(IQueryContext[] queryContexts) { queryContexts.ForEach(queryContext => { Queue <IQueryContext> queryHistory = QueryHistory.GetOrCreate(queryContext.QueryName); if (queryHistory.Count >= 2) //Only track up to last run of this query { queryHistory.Dequeue(); } queryHistory.Enqueue(queryContext); }); }