public static void UpdateSubverseHighestRanking(string subverse, double newRank) { var highestRankCacheEntry = GetSubverseHighestRanking(subverse); if (highestRankCacheEntry != null) { if (highestRankCacheEntry < newRank) { CacheHandler.Instance.Replace <double?>(CachingKey.SubverseHighestRank(subverse), highestRankCacheEntry, TimeSpan.FromMinutes(30)); } } }
public static double?GetSubverseHighestRanking(string subverse) { var highestRank = CacheHandler.Instance.Register(CachingKey.SubverseHighestRank(subverse), new Func <double?>(() => { using (var repo = new Repository()) { return(repo.HighestRankInSubverse(subverse)); } }), TimeSpan.FromMinutes(30)); return(highestRank); }