public static bool InsertFile(string file, bool IsMapPath = true) { try { using (var db = new Models.MainContext()) { file = IsMapPath ? TM.IO.FileDirectory.MapPath(file) : file; var item = new System.IO.FileInfo(file); item = TM.IO.FileDirectory.ReExtensionToLower(item.FullName, false); var fullname = item.FullName.Replace("\\" + item.Name, ""); var directory = db.FILE_MANAGER.Where(d => d.FULLNAME == fullname).FirstOrDefault(); if (directory == null) { return(false); } if (item.Name == "Thumbs.db") { return(true); } var FileItem = db.FILE_MANAGER.Where(d => d.FULLNAME == item.FullName).FirstOrDefault(); if (FileItem != null) { FileItem.PARENTID = directory.ID; db.Entry(FileItem).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); return(true); } FileItem = new Models.FILE_MANAGER(); FileItem.ID = Guid.NewGuid(); FileItem.PARENTID = directory.ID; FileItem.PARENT = directory.NAME; FileItem.ROOT = directory.ROOT; FileItem.SUBDIRECTORY = directory.SUBDIRECTORY + directory.NAME + "\\"; FileItem.LEVELS = directory.LEVELS + 1; FileItem.NAME = item.Name; FileItem.FULLNAME = item.FullName; FileItem.EXTENSION = item.Extension.ToLower(); FileItem.EXTENSIONICON = getExtensionIcon(FileItem.EXTENSION); FileItem.TYPE = string.IsNullOrEmpty(item.Extension) ? TM.Common.Objects.FileManager.directory : TM.Common.Objects.FileManager.file; FileItem.ATTRIBUTES = item.Attributes.ToString(); FileItem.ATTRIBUTESENUM = (int)item.Attributes;//item.Key.Attributes.ToString(); FileItem.LENGTH = item.Length; FileItem.ISREADONLY = item.IsReadOnly; //FileItem.Description = null; FileItem.CREATIONTIME = item.CreationTime; FileItem.CREATIONTIMEUTC = item.CreationTimeUtc; FileItem.LASTACCESSTIME = item.LastAccessTime; FileItem.LASTACCESSTIMEUTC = item.LastAccessTimeUtc; FileItem.LASTWRITETIME = item.LastWriteTime; FileItem.LASTWRITETIMEUTC = item.LastWriteTimeUtc; FileItem.CREATEDBY = "Admin";//TM.Common.Auth.id().ToString(); //FileItem.LastAccessBy = TM.Common.Auth.id().ToString(); //FileItem.LastWriteBy = TM.Common.Auth.id().ToString(); FileItem.EXISTS = item.Exists; FileItem.FLAG = 1; db.FILE_MANAGER.Add(FileItem); db.SaveChanges(); return(true); } } catch (Exception) { return(false); } }
public static bool InsertFile(string file, bool IsMapPath = true) { try { using (var db = new Models.MainContext()) { file = IsMapPath ? TM.IO.FileDirectory.MapPath(file) : file; var item = new System.IO.FileInfo(file); item = TM.IO.FileDirectory.ReExtensionToLower(item.FullName, false); var fullname = item.FullName.Replace("\\" + item.Name, ""); var directory = db.FileManagers.Where(d => d.FullName == fullname).FirstOrDefault(); if (directory == null) { return(false); } if (item.Name == "Thumbs.db") { return(true); } var FileItem = db.FileManagers.Where(d => d.FullName == item.FullName).FirstOrDefault(); if (FileItem != null) { FileItem.ParentID = directory.ID; db.Entry(FileItem).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); return(true); } FileItem = new Models.FileManager(); FileItem.ID = Guid.NewGuid(); FileItem.ParentID = directory.ID; FileItem.Parent = directory.Name; FileItem.Root = directory.Root; FileItem.Subdirectory = directory.Subdirectory + directory.Name + "\\"; FileItem.Level = directory.Level + 1; FileItem.Name = item.Name; FileItem.FullName = item.FullName; FileItem.Extension = item.Extension; FileItem.ExtensionIcon = getExtensionIcon(item.Extension); FileItem.Type = string.IsNullOrEmpty(item.Extension) ? TM.Common.Objects.FileManager.directory : TM.Common.Objects.FileManager.file; FileItem.Attributes = item.Attributes.ToString(); FileItem.AttributesEnum = (int)item.Attributes;//item.Key.Attributes.ToString(); FileItem.Length = item.Length; FileItem.IsReadOnly = item.IsReadOnly; //FileItem.Description = null; FileItem.CreationTime = item.CreationTime; FileItem.CreationTimeUtc = item.CreationTimeUtc; FileItem.LastAccessTime = item.LastAccessTime; FileItem.LastAccessTimeUtc = item.LastAccessTimeUtc; FileItem.LastWriteTime = item.LastWriteTime; FileItem.LastWriteTimeUtc = item.LastWriteTimeUtc; FileItem.CreatedBy = Authentication.Auth.AuthUser.id.ToString(); //FileItem.LastAccessBy = Authentication.Auth.AuthUser.id.ToString(); //FileItem.LastWriteBy = Authentication.Auth.AuthUser.id.ToString(); FileItem.Exists = item.Exists; FileItem.Flag = 1; db.FileManagers.Add(FileItem); db.SaveChanges(); return(true); } } catch (Exception) { return(false); } }
public static bool InsertDirectoriesFiles(string path) { try { using (var db = new Models.MainContext()) { var all = getDirectoriesFiles(path.Replace('/', '\\')); foreach (var item in all) { var fullName = item.Key.FullName.Trim('\\'); var FileManager = db.FILE_MANAGER.Where(d => d.FULLNAME == fullName).FirstOrDefault(); if (FileManager == null) { FileManager = new Models.FILE_MANAGER(); FileManager.ID = Guid.NewGuid(); FileManager.PARENTID = Guid.Empty; FileManager.PARENT = item.Key.Parent.ToString(); FileManager.ROOT = item.Key.Root.ToString(); FileManager.SUBDIRECTORY = "\\"; FileManager.LEVELS = 0; FileManager.NAME = item.Key.Name; FileManager.FULLNAME = item.Key.FullName; FileManager.EXTENSION = item.Key.Extension; FileManager.EXTENSIONICON = "fa fa-folder"; FileManager.TYPE = string.IsNullOrEmpty(item.Key.Extension) ? TM.Common.Objects.FileManager.directory : TM.Common.Objects.FileManager.file; FileManager.ATTRIBUTES = item.Key.Attributes.ToString(); FileManager.ATTRIBUTESENUM = (int)item.Key.Attributes; //item.Key.Attributes.ToString(); //FileManager.Description = null; FileManager.CREATIONTIME = item.Key.CreationTime; FileManager.CREATIONTIMEUTC = item.Key.CreationTimeUtc; FileManager.LASTACCESSTIME = item.Key.LastAccessTime; FileManager.LASTACCESSTIMEUTC = item.Key.LastAccessTimeUtc; FileManager.LASTWRITETIME = item.Key.LastWriteTime; FileManager.LASTWRITETIMEUTC = item.Key.LastWriteTimeUtc; FileManager.CREATEDBY = "Admin";//TM.Common.Auth.id().ToString(); //FileManager.LastAccessBy = TM.Common.Auth.id().ToString(); //FileManager.LastWriteBy = TM.Common.Auth.id().ToString(); FileManager.EXISTS = item.Key.Exists; FileManager.FLAG = 1; if (item.Key.Parent.ToString() != TM.Common.Directories.Uploads.Trim('\\')) { var tmp = db.FILE_MANAGER.Local.Where(d => d.NAME == FileManager.PARENT && d.FLAG > 0).FirstOrDefault(); if (tmp == null) { continue; } FileManager.PARENTID = tmp.ID; FileManager.SUBDIRECTORY = tmp.SUBDIRECTORY + FileManager.PARENT + "\\"; FileManager.LEVELS = tmp.LEVELS + 1; } db.FILE_MANAGER.Add(FileManager); } // foreach (var file in item.Value) { if (file.Name == "Thumbs.db") { continue; } fullName = file.FullName.Trim('\\'); var FileItem = db.FILE_MANAGER.Where(d => d.FULLNAME == fullName).FirstOrDefault(); if (FileItem != null) { FileItem.PARENTID = FileManager.ID; db.Entry(FileItem).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); continue; } FileItem = new Models.FILE_MANAGER(); FileItem.ID = Guid.NewGuid(); FileItem.PARENTID = FileManager.ID; FileItem.PARENT = item.Key.Name; FileItem.ROOT = item.Key.Root.ToString(); FileItem.SUBDIRECTORY = FileManager.SUBDIRECTORY + item.Key.Name + "\\"; FileItem.LEVELS = FileManager.LEVELS + 1; FileItem.NAME = file.Name; FileItem.FULLNAME = file.FullName; FileItem.EXTENSION = file.Extension.ToLower(); FileItem.EXTENSIONICON = getExtensionIcon(FileItem.EXTENSION); FileItem.TYPE = string.IsNullOrEmpty(file.Extension) ? TM.Common.Objects.FileManager.directory : TM.Common.Objects.FileManager.file; FileItem.ATTRIBUTES = file.Attributes.ToString(); FileItem.ATTRIBUTESENUM = (int)file.Attributes;//item.Key.Attributes.ToString(); FileItem.LENGTH = file.Length; FileItem.ISREADONLY = file.IsReadOnly; //FileItem.Description = null; FileItem.CREATIONTIME = file.CreationTime; FileItem.CREATIONTIMEUTC = file.CreationTimeUtc; FileItem.LASTACCESSTIME = file.LastAccessTime; FileItem.LASTACCESSTIMEUTC = file.LastAccessTimeUtc; FileItem.LASTWRITETIME = file.LastWriteTime; FileItem.LASTWRITETIMEUTC = file.LastWriteTimeUtc; FileItem.CREATEDBY = "Admin";//TM.Common.Auth.id().ToString(); //FileItem.LastAccessBy = TM.Common.Auth.id().ToString(); //FileItem.LastWriteBy = TM.Common.Auth.id().ToString(); FileItem.EXISTS = file.Exists; FileItem.FLAG = 1; db.FILE_MANAGER.Add(FileItem); } } db.SaveChanges(); return(true); } } catch (Exception) { return(false); } }
public static bool InsertDirectoriesFiles(string path) { try { using (var db = new Models.MainContext()) { var all = getDirectoriesFiles(path.Replace('/', '\\')); foreach (var item in all) { var fullName = item.Key.FullName.Trim('\\'); var FileManager = db.FileManagers.Where(d => d.FullName == fullName).FirstOrDefault(); if (FileManager == null) { FileManager = new Models.FileManager(); FileManager.ID = Guid.NewGuid(); FileManager.ParentID = Guid.Empty; FileManager.Parent = item.Key.Parent.ToString(); FileManager.Root = item.Key.Root.ToString(); FileManager.Subdirectory = "\\"; FileManager.Level = 0; FileManager.Name = item.Key.Name; FileManager.FullName = item.Key.FullName; FileManager.Extension = item.Key.Extension; FileManager.ExtensionIcon = "fa fa-folder-open"; FileManager.Type = string.IsNullOrEmpty(item.Key.Extension) ? TM.Common.Objects.FileManager.directory : TM.Common.Objects.FileManager.file; FileManager.Attributes = item.Key.Attributes.ToString(); FileManager.AttributesEnum = (int)item.Key.Attributes; //item.Key.Attributes.ToString(); //FileManager.Description = null; FileManager.CreationTime = item.Key.CreationTime; FileManager.CreationTimeUtc = item.Key.CreationTimeUtc; FileManager.LastAccessTime = item.Key.LastAccessTime; FileManager.LastAccessTimeUtc = item.Key.LastAccessTimeUtc; FileManager.LastWriteTime = item.Key.LastWriteTime; FileManager.LastWriteTimeUtc = item.Key.LastWriteTimeUtc; FileManager.CreatedBy = Authentication.Auth.AuthUser.id.ToString(); //FileManager.LastAccessBy = Authentication.Auth.AuthUser.id.ToString(); //FileManager.LastWriteBy = Authentication.Auth.AuthUser.id.ToString(); FileManager.Exists = item.Key.Exists; FileManager.Flag = 1; if (item.Key.Parent.ToString() != TM.Common.Directories.Uploads.Trim('\\')) { var tmp = db.FileManagers.Local.Where(d => d.Name == FileManager.Parent && d.Flag > 0).FirstOrDefault(); if (tmp == null) { continue; } FileManager.ParentID = tmp.ID; FileManager.Subdirectory = tmp.Subdirectory + FileManager.Parent + "\\"; FileManager.Level = tmp.Level + 1; } db.FileManagers.Add(FileManager); } // foreach (var file in item.Value) { if (file.Name == "Thumbs.db") { continue; } fullName = file.FullName.Trim('\\'); var FileItem = db.FileManagers.Where(d => d.FullName == fullName).FirstOrDefault(); if (FileItem != null) { FileItem.ParentID = FileManager.ID; db.Entry(FileItem).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); continue; } FileItem = new Models.FileManager(); FileItem.ID = Guid.NewGuid(); FileItem.ParentID = FileManager.ID; FileItem.Parent = item.Key.Name; FileItem.Root = item.Key.Root.ToString(); FileItem.Subdirectory = FileManager.Subdirectory + item.Key.Name + "\\"; FileItem.Level = FileManager.Level + 1; FileItem.Name = file.Name; FileItem.FullName = file.FullName; FileItem.Extension = file.Extension; FileItem.ExtensionIcon = getExtensionIcon(file.Extension); FileItem.Type = string.IsNullOrEmpty(file.Extension) ? TM.Common.Objects.FileManager.directory : TM.Common.Objects.FileManager.file; FileItem.Attributes = file.Attributes.ToString(); FileItem.AttributesEnum = (int)file.Attributes;//item.Key.Attributes.ToString(); FileItem.Length = file.Length; FileItem.IsReadOnly = file.IsReadOnly; //FileItem.Description = null; FileItem.CreationTime = file.CreationTime; FileItem.CreationTimeUtc = file.CreationTimeUtc; FileItem.LastAccessTime = file.LastAccessTime; FileItem.LastAccessTimeUtc = file.LastAccessTimeUtc; FileItem.LastWriteTime = file.LastWriteTime; FileItem.LastWriteTimeUtc = file.LastWriteTimeUtc; FileItem.CreatedBy = Authentication.Auth.AuthUser.id.ToString(); //FileItem.LastAccessBy = Authentication.Auth.AuthUser.id.ToString(); //FileItem.LastWriteBy = Authentication.Auth.AuthUser.id.ToString(); FileItem.Exists = file.Exists; FileItem.Flag = 1; db.FileManagers.Add(FileItem); } } db.SaveChanges(); return(true); } } catch (Exception) { return(false); } }