コード例 #1
0
 private static HrefLookup GetHrefLookupConfig(FileInfo fileInfo, HrefLookup result)
 {
     try
     {
         lock (ObjectLock)
         {
             using (var reader = new StreamReader(fileInfo.FullName))
             {
                 var contents = reader.ReadToEnd();
                 if (contents != string.Empty)
                 {
                     result = new HrefLookup(contents);
                 }
             }
         }
     }
     catch (Exception)
     {
         //allow a try on next user
         CacheMemory.ClearMenu();
         CacheMemory.ClearCmsCache();
         result = new HrefLookup();
     }
     return(result);
 }
コード例 #2
0
        private static HrefLookup LoadFromDiskAndCache(string path)
        {
            var result    = new HrefLookup();
            var directory = new DirectoryInfo(path);
            var fileInfo  = directory.GetFiles().OrderByDescending(file => file.LastWriteTime).FirstOrDefault();

            // MJN: null reference, it is possible for there to be no element in 1
            if (fileInfo != null)
            {
                result = GetHrefLookupConfig(fileInfo, result);
            }
            else if (directory.GetFiles().Count() > 1)
            {
                var previousConfig = directory.GetFiles().OrderByDescending(file => file.LastWriteTime).ElementAt(1);

                result = GetHrefLookupConfig(previousConfig, result);
            }

            return(result);
        }