private DateTime GetLastModifiedTime(string resourceFile, string culture, Dto.Localization localization) { Requires.NotNullOrEmpty("culture", culture); var cacheKey = string.Format(localization.ResxModifiedDateCacheKey, culture); var cachedData = DataCache.GetCache(cacheKey); if (cachedData is DateTime) { return((DateTime)DataCache.GetCache(cacheKey)); } var lastModifiedDate = GetLastModifiedTimeInternal(resourceFile, culture); DataCache.SetCache(cacheKey, lastModifiedDate, (DNNCacheDependency)null, Cache.NoAbsoluteExpiration, OneHour, CacheItemPriority.Normal, null); return(lastModifiedDate); }
public Dictionary <string, string> GetLocalizedDictionary(string resourceFile, string culture, Dto.Localization localization) { Requires.NotNullOrEmpty("resourceFile", resourceFile); Requires.NotNullOrEmpty("culture", culture); var cacheKey = string.Format(localization.ResxDataCacheKey, culture, resourceFile); var localizedDict = DataCache.GetCache(cacheKey) as Dictionary <string, string>; if (localizedDict != null) { return(localizedDict); } var dictionary = new Dictionary <string, string>(); foreach (var kvp in GetLocalizationValues(resourceFile, culture).Where(kvp => !dictionary.ContainsKey(kvp.Key))) { dictionary[kvp.Key] = kvp.Value; } DataCache.SetCache(cacheKey, dictionary, (DNNCacheDependency)null, Cache.NoAbsoluteExpiration, FiveMinutes, CacheItemPriority.Normal, null); return(dictionary); }
public long GetResxTimeStamp(string resourceFile, Dto.Localization localization) { return(GetLastModifiedTime(resourceFile, CultureName, localization).Ticks); }