예제 #1
0
 private void SaveReferenceCollection(AssemblyReferenceCollection referenceCollection)
 {
     try
     {
         _readerWriterLock.EnterWriteLock();
         var dataFile = GetReferenceDataFile();
         var jsonData = JsonConvert.SerializeObject(referenceCollection, Formatting.Indented);
         Kooboo.IO.IOUtility.SaveStringToFile(dataFile, jsonData);
     }
     finally
     {
         _readerWriterLock.ExitWriteLock();
     }
 }
예제 #2
0
        private AssemblyReferenceCollection RebuildReferenceData()
        {
            try
            {
                AssemblyReferenceCollection list = new AssemblyReferenceCollection();
                _readerWriterLock.EnterWriteLock();

                var binFolder = Path.Combine(_baseDir.CMSBaseDir + "Bin");
                foreach (var item in Directory.EnumerateFiles(binFolder, "*.dll"))
                {
                    var fileName = Path.GetFileName(item);
                    var version  = GetAssemblyVersion(item);
                    list.Add(new AssemblyReferenceData(fileName, version, "System")
                    {
                        IsSystemAssembly = true
                    });
                }
                return(list);
            }
            finally
            {
                _readerWriterLock.ExitWriteLock();
            }
        }