private static int Handle(string[] inputs, FileInfo schema, DirectoryInfo schemes) { xmlInputs = inputs.ToList(); var valid = (schema != null) || (schemes != null); if (schema != null) { valid = valid & LoadXMLSchemaFromFileInfo(schema); } if (schemes != null) { valid = schemes.EnumerateFiles("*.xsd").Count() > 0; foreach (var xsdFile in schemes.EnumerateFiles("*.xsd")) { valid = valid & LoadXMLSchemaFromFileFullname(xsdFile.FullName); } } if (valid) { return((ValidateInputs()) ? 0 : 1); } return(1); }
public void FetchAttributes() { checked { ulong msgCount = 0; try { System.IO.DirectoryInfo dInfo = new System.IO.DirectoryInfo(queuePath); foreach (System.IO.FileInfo fi in dInfo.EnumerateFiles($"*{msgExtension}")) { if ((fi.Attributes & System.IO.FileAttributes.Hidden) != System.IO.FileAttributes.Hidden) { ++msgCount; } } } catch (Exception) { } finally { this.approximateMessageCount = msgCount; } } }
private void ScanFolder() { Properties.Settings.Default.SelectedPath = this.TxtPath.Text; Properties.Settings.Default.Save(); this._files.Clear(); this._currentSourceFile = null; this._minifiedOutput = null; try { var path = this.TxtPath.Text ?? string.Empty; var folder = new System.IO.DirectoryInfo(path); foreach (System.IO.FileInfo fi in folder.EnumerateFiles("*.xml")) { this._files.Add(fi.Name); } } catch (Exception ex) { MessageBox.Show( this, ex.Message, "Error!", MessageBoxButton.OK, MessageBoxImage.Error ); } }
public ActionResult HomeSlider() { System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(Server.MapPath("/public/homeslider/")); List <string> fl = di.EnumerateFiles().Where(f => f.Extension == ".jpg").OrderBy(x => Guid.NewGuid()).Select(f => string.Concat("/public/homeslider/", f.Name)).ToList(); return(PartialView("_HomeSlider", fl)); }
private static void cleanTypeScriptOutput(System.IO.DirectoryInfo targetDirectory, bool logDetailedErrors) { foreach (var mapFile in targetDirectory.EnumerateFiles("*.js.map")) { if (!mapFile.IsReadOnly) { try { var baseName = mapFile.FullName.Replace(".js.map", String.Empty); var associatedScript = new System.IO.FileInfo(baseName + ".js"); mapFile.Delete(); Console.WriteLine("Cleaned file: " + mapFile.FullName); if (associatedScript.Exists) { associatedScript.Delete(); Console.WriteLine("Cleaned file: " + associatedScript.FullName); } } catch (Exception ex) { Console.WriteLine("Error cleaning file: " + mapFile.FullName); if (logDetailedErrors) { Console.WriteLine("Error: " + ex.Message); } } } } }
public void ListFiles(string file) { var dirinfo = data[file]; opens.Add(dirinfo); System.IO.DirectoryInfo dir = opens[opens.Count - 1]; List <MyFile> list = new List <MyFile>(); IEnumerable <System.IO.FileInfo> dirs = null; try { dirs = dir?.EnumerateFiles(); } catch (Exception e) { return; } foreach (var item in dirs) //exceptiiion { MyFile mylovingfile = new MyFile(item.Name, item.Length, item.CreationTime); list.Add(mylovingfile); } OnFilesListed(list); }
public static Node Generate(System.IO.DirectoryInfo directory, bool recursive) { Node node = new Node(); foreach (var subdirectory in directory.EnumerateDirectories()) { Entry dirEntry = new Entry(subdirectory); node.Nodes.Add(dirEntry); if (recursive) { dirEntry.Node = Generate(subdirectory, recursive); dirEntry.UpdateSize(); } } foreach (var file in directory.EnumerateFiles()) { Entry fileEntry = new Entry(file, IsZipFile(file)); node.Nodes.Add(fileEntry); if ((fileEntry.Kind == EntryKind.ZipFile) && recursive) { fileEntry.Node = ZipFileGenerator.Generate(file); fileEntry.UpdateSize(); } } return(node); }
static StackObject *EnumerateFiles_29(ILIntepreter __intp, StackObject *__esp, IList <object> __mStack, CLRMethod __method, bool isNewObj) { ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain; StackObject *ptr_of_this_method; StackObject *__ret = ILIntepreter.Minus(__esp, 3); ptr_of_this_method = ILIntepreter.Minus(__esp, 1); System.IO.SearchOption @searchOption = (System.IO.SearchOption) typeof(System.IO.SearchOption).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack)); __intp.Free(ptr_of_this_method); ptr_of_this_method = ILIntepreter.Minus(__esp, 2); System.String @searchPattern = (System.String) typeof(System.String).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack)); __intp.Free(ptr_of_this_method); ptr_of_this_method = ILIntepreter.Minus(__esp, 3); System.IO.DirectoryInfo instance_of_this_method = (System.IO.DirectoryInfo) typeof(System.IO.DirectoryInfo).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack)); __intp.Free(ptr_of_this_method); var result_of_this_method = instance_of_this_method.EnumerateFiles(@searchPattern, @searchOption); object obj_result_of_this_method = result_of_this_method; if (obj_result_of_this_method is CrossBindingAdaptorType) { return(ILIntepreter.PushObject(__ret, __mStack, ((CrossBindingAdaptorType)obj_result_of_this_method).ILInstance)); } return(ILIntepreter.PushObject(__ret, __mStack, result_of_this_method)); }
public void Save() { if (!System.IO.Directory.Exists(dirPath)) { return; } System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(dirPath); var files = dir.EnumerateFiles("*.??g"); foreach (var file in files) { var fileNameParts = file.Name.Split('.'); var mime = EnsureMIME(fileNameParts[1]); var id = fileNameParts[0]; var dataFile = fileStore.Files.FirstOrDefault(f => f.Id == id); using (var fileStream = file.OpenRead()) { var dataBytes = new byte[fileStream.Length]; fileStream.Read(dataBytes, 0, dataBytes.Length); dataFile.Data = dataBytes; fileStore.UpdateAsync(dataFile).GetAwaiter().GetResult(); } } }
private void ScanFolder(string folder, bool recurse, string[] extensions) { System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(folder); foreach (var fi in di.EnumerateFiles()) { String fileext = (fi.Extension != null && fi.Extension != String.Empty) ? fi.Extension.ToLower() : ""; if (fileext.Length > 0 && fileext[0] == '.') { fileext = fileext.Substring(1); } if (extensions.Length == 0 || extensions.Contains(fileext)) { if (!audioFiles.ContainsFile(fi.FullName)) { audioFiles.Add(new AudioFile(fi.FullName)); } } } if (!recurse) { return; } foreach (var fi in di.EnumerateDirectories()) { ScanFolder(fi.FullName, recurse, extensions); } }
public static IEnumerable <System.IO.FileInfo> GetCsvFile(string strFilePath) { System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(strFilePath); IEnumerable <System.IO.FileInfo> files = di.EnumerateFiles("*", System.IO.SearchOption.AllDirectories); return(files); }
public void HasTestData() { System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(TestFolder); var files = dir.EnumerateFiles(); Assert.NotEmpty(files); }
static ApiWrapperWithLogger() { exeDir = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location); logDir = new System.IO.DirectoryInfo(exeDir + "\\NetworkLogs"); if (logDir.Exists == false) logDir.Create(); else foreach (var item in logDir.EnumerateFiles()) item.Delete(); }
public IEnumerable <System.IO.FileInfo> GetSongFiles(string songFileLocation) { var songs = new System.IO.DirectoryInfo(songFileLocation); foreach (var song in songs.EnumerateFiles()) { yield return(song); } }
private int CountFiles(System.IO.DirectoryInfo DirInfo) { int i = 0; foreach (System.IO.FileInfo FI in DirInfo.EnumerateFiles()) { i++; } return(i); }
public static long DirectorySize(System.IO.DirectoryInfo dInfo, bool includeSubDir) { long totalSize = dInfo.EnumerateFiles() .Sum(file => file.Length); if (includeSubDir) { totalSize += dInfo.EnumerateDirectories() .Sum(dir => DirectorySize(dir, true)); } return(totalSize); }
static void Main(string[] args) { //Works fine System.IO.DirectoryInfo sysDirectory = new System.IO.DirectoryInfo("C:\\TEST"); sysDirectory.EnumerateFiles(); //Does not compile: //'Pri.LongPath.DirectoryInfo' does not contain a definition for 'EnumerateFiles' //and no extension method 'EnumerateFiles' accepting a first argument of type //'Pri.LongPath.DirectoryInfo' could be found (are you missing a using directive or an assembly reference?) Pri.LongPath.DirectoryInfo longDirectory = new Pri.LongPath.DirectoryInfo("C:\\TEST"); longDirectory.EnumerateFiles(); }
private IEnumerable <NoteSource> GetLocalFiles() { List <NoteSource> sources = new List <NoteSource>(); System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(NoteDataFolder); foreach (System.IO.FileInfo file in dir.EnumerateFiles()) { NoteSource source = new FileNoteSource(this); source.SetName(file.Name); source.FileType = file.Extension; sources.Add(source); } return(sources); }
public PhotoModel(string folder) { string path = HttpContext.Current.Server.MapPath(folder); di = new System.IO.DirectoryInfo(path); foreach (var file in di.EnumerateFiles("*.jpg", System.IO.SearchOption.TopDirectoryOnly)) { var p = new Photo() { Path = String.Concat(folder, file.Name), Description = System.IO.Path.GetFileNameWithoutExtension(file.Name) }; Add(p); } }
public void ListDirectory(string Path) { System.IO.DirectoryInfo DirInfo = new System.IO.DirectoryInfo(Path); Console.WriteLine("Directories:"); foreach (System.IO.DirectoryInfo Dir in DirInfo.GetDirectories()) { Console.WriteLine(String.Format("{0} Files: {1} Directories: {2}", Dir, CountFiles(Dir), CountDirectory(Dir))); } Console.WriteLine("\nFiles:"); foreach (System.IO.FileInfo File in DirInfo.EnumerateFiles()) { Console.WriteLine(String.Format("{0} Length: {1}", File.FullName, File.Length)); } }
static void Main(string[] args) { var kafkaParams = new Dictionary <string, string> //refer to http://kafka.apache.org/documentation.html#configuration { { "metadata.broker.list", "laptop-brianr:9092" }, // update with your machine name { "topic", "SampleTopic2" } }; var directory = new System.IO.DirectoryInfo(@".\sample_data"); foreach (var file in directory.EnumerateFiles("*.json")) { MessagePublisher.Publish(kafkaParams, file.FullName); } Console.WriteLine("Finished"); Console.ReadLine(); }
public static void Update(System.IO.DirectoryInfo directory, Node node) { IDictionary <string, Entry> entries = new Dictionary <string, Entry>(node.Nodes.Count); foreach (var entry in node.Nodes) { entries.Add(entry.Name, entry); } foreach (var subdirectory in directory.EnumerateDirectories()) { if (entries.ContainsKey(subdirectory.Name)) { entries.Remove(subdirectory.Name); } else { Entry dirEntry = new Entry(subdirectory); node.Nodes.Add(dirEntry); } } foreach (var file in directory.EnumerateFiles()) { if (entries.ContainsKey(file.Name)) { Entry fileEntry = entries[file.Name]; entries.Remove(file.Name); if (fileEntry.LastWriteTime < file.LastWriteTime) { node.Nodes.Remove(fileEntry); node.Nodes.Add(new Entry(file, IsZipFile(file))); } } else { node.Nodes.Add(new Entry(file, IsZipFile(file))); } } foreach (var entryPair in entries) { node.Nodes.Remove(entryPair.Value); } }
// Загрузка списка конфигураций private void LoadCfgList() { System.IO.DirectoryInfo cfgDirectory = new System.IO.DirectoryInfo( System.IO.Path.Combine(getApplicationDirectory(), CFG_DIRECTORY_NAME)); string[] cfgFiles = cfgDirectory.EnumerateFiles("*.xml") .OrderByDescending(t => t.LastAccessTime) .Select(t => t.Name).ToArray(); for (int i = 0; i < cfgFiles.Length; i++) { System.IO.FileInfo cfgFile = new System.IO.FileInfo(cfgFiles[i]); ToolStripMenuItem item = new ToolStripMenuItem(); item.Text = cfgFile.Name; item.Name = "programConfiguration" + i; item.Click += new EventHandler(onConfigurationSelect); openFileMenuItem.DropDownItems.Add(item); } }
public static FilmBox Load(FilmSession filmSession, string filmBoxFolder) { var filmBoxFile = string.Format(@"{0}\FilmBox.dcm", filmBoxFolder); var file = DicomFile.Open(filmBoxFile); var filmBox = new FilmBox(filmSession, file.FileMetaInfo.MediaStorageSOPInstanceUID, file.Dataset); var imagesFolder = new System.IO.DirectoryInfo(string.Format(@"{0}\Images", filmBoxFolder)); foreach (var image in imagesFolder.EnumerateFiles("*.dcm")) { var imageBox = ImageBox.Load(filmBox, image.FullName); filmBox.BasicImageBoxes.Add(imageBox); } return(filmBox); }
public IEnumerable <IFileInfo> EnumerateLogFiles(string path, DateTime from, DateTime to) { Log.To.Main.Add($"Searching for logs with LastWriteTime => {from.ToString("yyyy-MM-dd hh:mm")} to {to.ToString("yyyy-MM-dd hh:mm")} in {path} "); var sw = new Stopwatch(); sw.Start(); var dirInfo = new System.IO.DirectoryInfo(path); var a = dirInfo.EnumerateFiles().Where(p => p.LastWriteTime >= from && p.LastWriteTime <= to && (p.Extension.Equals(".log", StringComparison.InvariantCultureIgnoreCase) || p.Extension.Equals(".txt", StringComparison.InvariantCultureIgnoreCase)) ); //var b = dirInfo.EnumerateFiles().Where(p => // p.LastWriteTime >= from && p.LastWriteTime <= to //); //var c = dirInfo.EnumerateFiles().Where(p => // p.LastWriteTime >= from //); //var bc = dirInfo.EnumerateFiles().Where(p => // (p.Extension.Equals(".log", StringComparison.InvariantCultureIgnoreCase) || p.Extension.Equals(".txt", StringComparison.InvariantCultureIgnoreCase)) //); //bc.ToList().ForEach(p=>Trace.WriteLine(p.Name + "->" + p.LastWriteTime)); var ret = new List <IFileInfo>(); foreach (var fileInfo in a) { ret.Add(new SystemFileInfo(fileInfo)); } sw.Stop(); //Debug.WriteLine($"enum time => {sw.Elapsed.TotalSeconds} for {path}"); return(ret); }
/// <summary> /// 清理旧文件 /// </summary> public void DeleteOldFiles() { System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(LogFileFolderPath); try { IEnumerable <System.IO.FileInfo> files = dir.EnumerateFiles("*.txt", System.IO.SearchOption.TopDirectoryOnly); foreach (var f in files) { if (f.CreationTime.AddDays(FileRemainDays) < DateTime.Now) { try { f.Attributes = System.IO.FileAttributes.Normal; f.Delete(); } catch { continue; } } } } catch { throw; } }
public static void ExitProgram() { var dir = new System.IO.DirectoryInfo(System.IO.Path.GetTempPath()); foreach (var file in dir.EnumerateFiles("*Sitzplan*")) { try { file.Delete(); } catch (Exception error) { MessageBox.Show( "Fehler beim Löschen der temporären Dateien:" + error, "Fehler", MessageBoxButton.OK, MessageBoxImage.Error); } } Application.Current.Shutdown(); }
public IEnumerable <IFileInfo> EnumerateFilesByExtension(string path, List <string> extensions) { var sw = new Stopwatch(); sw.Start(); var dirInfo = new System.IO.DirectoryInfo(path); var a = dirInfo.EnumerateFiles().Where(p => extensions.Contains(p.Extension, StringComparer.InvariantCultureIgnoreCase) ); var ret = new List <IFileInfo>(); foreach (var fileInfo in a) { ret.Add(new SystemFileInfo(fileInfo)); } sw.Stop(); //Debug.WriteLine($"enum time => {sw.Elapsed.TotalSeconds} for {path}"); return(ret); }
private void AddFolder(PackageHeirarchyItem parent, string filePath) { System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(filePath); if (parent != null && !Contains(parent, dir.Name)) { var newItem = new PackageHeirarchyItem(filePath); newItem.Name = dir.Name; newItem.Parent = parent; parent.Children.Add(newItem); foreach (System.IO.FileInfo file in dir.EnumerateFiles()) { AddFile(newItem, file.FullName); } foreach (System.IO.DirectoryInfo subDir in dir.EnumerateDirectories()) { AddFolder(newItem, subDir.FullName); } } }
public ActionResult GetPageList(LogPageInputDto vm) { if (vm != null && this.ModelState.IsValid) { PageDataOutputDto <LogFileOutputDto> pageData = new PageDataOutputDto <LogFileOutputDto>(); var path = LogUtils.GetLogDir(vm.Name); if (!string.IsNullOrEmpty(path) && System.IO.Directory.Exists(path)) { var dir = new System.IO.DirectoryInfo(path); var files = dir.EnumerateFiles(); if (vm.BeginTime.HasValue) { files = files.Where(q => q.CreationTime >= vm.BeginTime.Value); } if (vm.EndTime.HasValue) { files = files.Where(q => q.CreationTime <= vm.EndTime.Value); } pageData.TotalCount = files.Count(); files = files.OrderByDescending(q => q.CreationTime); if (vm.PageIndex > 1) { files = files.Skip(vm.PageSize * (vm.PageIndex - 1)); } pageData.Data = files.Take(vm.PageSize).Select(q => new LogFileOutputDto { Name = q.Name, Size = GetSize(q.Length), CreateTime = q.CreationTime.ToString("yyyy-MM-dd HH:mm:ss"), UpdateTime = q.LastWriteTime.ToString("yyyy-MM-dd HH:mm:ss") }).ToList(); } return(Success(pageData)); } return(Error("请求参数不正确!")); }
public static void CreateMasterPowershellScript() { Helper.Log($"Creating Master powershell"); string head = "function getStat() {" + Environment.NewLine + @"Set-Location -Path 'C:\Program Files (x86)\Log Parser 2.2'" + Environment.NewLine; System.IO.DirectoryInfo DI = new System.IO.DirectoryInfo(Program.PSSQLFileLocation); var AllSQLFiles = DI.EnumerateFiles(); string body = ""; foreach (var item in AllSQLFiles) { body = body + $".\\LogParser.exe -i:IISW3C file:{item.FullName} -o:csv" + Environment.NewLine; Helper.Log($"{body}"); } string tail = "}" + Environment.NewLine + "getStat" + Environment.NewLine; string PSSCript = head + body + tail; System.IO.File.WriteAllText($"{Program.PSScriptLocation}\\master.ps1", PSSCript); }
private PackageFileSourceInfo AddFolder(PackageHeirarchyItem parent, string filePath) { PackageHeirarchyItem newItem = null; System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(filePath); if (parent != null && !Contains(parent, dir.Name)) { newItem = new PackageHeirarchyItem(filePath); newItem.Name = dir.Name; newItem.Parent = parent; parent.Children.Add(newItem); // EnumerateFiles is not working on mono for some reason, therefore use GetFiles instead, IEnumerable <System.IO.FileInfo> files; if (TraceLabSDK.RuntimeInfo.IsRunInMono) { files = dir.GetFiles(); } else { files = dir.EnumerateFiles(); } foreach (System.IO.FileInfo file in files) { AddFile(newItem, file.FullName); } foreach (System.IO.DirectoryInfo subDir in dir.EnumerateDirectories()) { AddFolder(newItem, subDir.FullName); } } return(newItem); }
public static FilmBox Load(FilmSession filmSession, string filmBoxFolder) { var filmBoxFile = string.Format(@"{0}\FilmBox.dcm", filmBoxFolder); var file = DicomFile.Open(filmBoxFile); var filmBox = new FilmBox(filmSession, file.FileMetaInfo.MediaStorageSOPInstanceUID, file.Dataset); var imagesFolder = new System.IO.DirectoryInfo(string.Format(@"{0}\Images", filmBoxFolder)); foreach (var image in imagesFolder.EnumerateFiles("*.dcm")) { var imageBox = ImageBox.Load(filmBox, image.FullName); filmBox.BasicImageBoxes.Add(imageBox); } return filmBox; }
private PackageFileSourceInfo AddFolder(PackageHeirarchyItem parent, string filePath) { PackageHeirarchyItem newItem = null; System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(filePath); if (parent != null && !Contains(parent, dir.Name)) { newItem = new PackageHeirarchyItem(filePath); newItem.Name = dir.Name; newItem.Parent = parent; parent.Children.Add(newItem); // EnumerateFiles is not working on mono for some reason, therefore use GetFiles instead, IEnumerable<System.IO.FileInfo> files; if(TraceLabSDK.RuntimeInfo.IsRunInMono) { files = dir.GetFiles(); } else { files = dir.EnumerateFiles(); } foreach (System.IO.FileInfo file in files) { AddFile(newItem, file.FullName); } foreach (System.IO.DirectoryInfo subDir in dir.EnumerateDirectories()) { AddFolder(newItem, subDir.FullName); } } return newItem; }
private void GetInputVectors() { if (_appSettings.imageDirectory == "") { return; } _appSettings.images.Clear(); // Get image files by filtering by extensions System.IO.DirectoryInfo directoryInfo = new System.IO.DirectoryInfo(_appSettings.imageDirectory); string[] extensions = new string[] { ".bmp", ".jpg", ".png", ".gif" }; var allowedExtensions = new HashSet<string>(extensions, StringComparer.OrdinalIgnoreCase); System.IO.FileInfo[] fileInfos = directoryInfo .EnumerateFiles("*", System.IO.SearchOption.AllDirectories) .Where(f => allowedExtensions.Contains(f.Extension)).ToArray(); foreach (System.IO.FileInfo f in fileInfos) { using (Bitmap img = new Bitmap(f.FullName)) { try { // Feature Extraction ImageData imgData = PictureSOM.SOMHelper.GetImageData(img); imgData.m_fileName = f.Name; imgData.m_directoryName = f.DirectoryName; Console.WriteLine(imgData.m_fullName); // Test experimental features here //float[] testFeature = Features.calculateCEDD_Compact(img); _appSettings.images.Add(imgData); } catch(Exception) { Console.WriteLine("Could not add " + f.FullName); } } } }
private void loadImages() { FolderBrowserDialog browser = new FolderBrowserDialog(); DialogResult result; do{ result = browser.ShowDialog(); }while(result != DialogResult.OK); System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(browser.SelectedPath); IEnumerable<System.IO.FileInfo> files = dir.EnumerateFiles(); IEnumerator<System.IO.FileInfo> fileEnumer = files.GetEnumerator(); while (fileEnumer.MoveNext()) { System.IO.FileInfo file = fileEnumer.Current; if (file.Extension == ".gif") { Image img = Image.FromFile(file.FullName); int capacity = images.Capacity; images.Add(img); } } loaded = true; iterator = images.GetEnumerator(); }
/// <summary> /// Dupe-safe uses PageTemplate.ViewName to prevent dupes /// </summary> private static List<PageTemplate> CreateSeedPageTemplates(this IGstoreDb storeDb, string virtualPath, Client client) { if (storeDb == null) { throw new ArgumentNullException("db"); } if (string.IsNullOrEmpty(virtualPath)) { throw new ArgumentNullException("virtualPath"); } if (client == null) { throw new ArgumentNullException("client"); } string path = string.Empty; if (HttpContext.Current == null) { string assemblyPath = new Uri(System.Reflection.Assembly.GetExecutingAssembly().CodeBase).AbsolutePath; string directoryName = System.IO.Path.GetDirectoryName(assemblyPath).Replace("GStore\\GStoreData\\", "GStore\\GStoreWeb\\"); path = System.IO.Path.Combine(directoryName, "..\\.." + virtualPath.TrimStart('~').Replace('/', '\\')).Replace("%20", " "); if (!System.IO.Directory.Exists(path)) { throw new ApplicationException("Page Templates folder could not be found in file system at path: " + path + ". Please run the web site first to populate the database."); } } else { path = HttpContext.Current.Server.MapPath(virtualPath); } if (!System.IO.Directory.Exists(path)) { throw new ApplicationException("Page Templates folder could not be found in file system web server at path: " + path + "."); } System.IO.DirectoryInfo folder = new System.IO.DirectoryInfo(path); IEnumerable<System.IO.FileInfo> files = folder.EnumerateFiles("Page *.cshtml"); int counter = 0; List<PageTemplate> newTemplates = new List<PageTemplate>(); foreach (System.IO.FileInfo file in files) { string name = file.Name.Substring(5, ((file.Name.Length - 5) - 7)) + " Template"; if (!client.PageTemplates.Any(pt => pt.Name.ToLower() == name.ToLower())) { string viewName = file.Name.Replace(".cshtml", ""); if (!client.PageTemplates.Any(pt => pt.ViewName.ToLower() == viewName.ToLower())) { counter++; PageTemplate pageTemplate = storeDb.PageTemplates.Create(); pageTemplate.Name = name; pageTemplate.ViewName = viewName; pageTemplate.Order = 2000 + counter; if (name.ToLower() == "custom html page template") { pageTemplate.Order = 9000 + counter; } pageTemplate.Description = pageTemplate.Name; pageTemplate.IsPending = false; pageTemplate.StartDateTimeUtc = DateTime.UtcNow.AddMinutes(-1); pageTemplate.EndDateTimeUtc = DateTime.UtcNow.AddYears(100); pageTemplate.Client = client; pageTemplate.ClientId = client.ClientId; storeDb.PageTemplates.Add(pageTemplate); newTemplates.Add(pageTemplate); } } } storeDb.SaveChangesEx(true, false, false, false); return newTemplates; }
private static void Exec(object obj) { var day = ConfigUtils.LogSaveDay; while (true) { System.Threading.Thread.Sleep(5 * 60 * 1000); try { DateTime exp = DateTime.Now.AddDays(-day); foreach (var name in LOG_TYPE_LIST) { var path = LogUtils.GetLogDir(name); if (System.IO.Directory.Exists(path)) { var dir = new System.IO.DirectoryInfo(path); var files = dir.EnumerateFiles().Where(q => q.CreationTime < exp); foreach (var f in files) { try { f.Delete(); } catch { } } } } } catch (Exception ex) { LogUtils.Error("【删除日志】", ex); } } }