Пример #1
0
 public void GetOriginalPath(FileInfoModel fileInfo)
 {
     if (fileInfo != null)
     {
         fileInfo.Path = GetOriginalPath(fileInfo.Path, fileInfo.DocumentType, fileInfo.DocumentId);
     }
 }
Пример #2
0
 public FileInfoModel RenameFile(FileInfoModel file, string newFileName)
 {
     try
     {
         var fi = GetFileInfo(file);
         if (fi != null)
         {
             var newFullPath = GetFullPath(GetOriginalPath(newFileName, file.DocumentType, file.DocumentId));
             if (string.Equals(fi.FullName, newFullPath, StringComparison.CurrentCultureIgnoreCase))
             {
                 var newTempFullPath =
                     GetFullPath(GetOriginalPath(GetTempName(fi.Name), file.DocumentType, file.DocumentId));
                 fi.MoveTo(newTempFullPath);
             }
             fi.CreationTimeUtc = DateTime.UtcNow;
             fi.MoveTo(newFullPath);
             file.FileName    = fi.Name;
             file.CreatedDate = fi.CreationTimeUtc;
             file.UpdatedDate = fi.LastAccessTimeUtc;
         }
     }
     catch
     {
     }
     return(file);
 }
Пример #3
0
 public FileInfo GetFileInfo(FileInfoModel file)
 {
     if (file != null)
     {
         GetOriginalPath(file);
         var fileInfo = GetFileInfo(file.Path);
         if (fileInfo != null)
         {
             if (string.IsNullOrWhiteSpace(file.FileName))
             {
                 file.FileName = fileInfo.Name;
             }
             return(fileInfo);
         }
         else
         {
             return(null);
         }
     }
     return(null);
 }
Пример #4
0
        public FileInfoModel MoveFile(FileInfoModel file, FolderInfoModel destinationFolder)
        {
            var newFile = new FileInfoModel();

            try
            {
                var fileInfo   = GetFileInfo(file);
                var folderInfo = GetFolderInfo(destinationFolder);
                if (destinationFolder.DocumentType != file.DocumentType && !folderInfo.Exists)
                {
                    folderInfo.Create();
                    folderInfo.Refresh();
                }
                if (fileInfo != null && folderInfo != null && fileInfo.Exists && folderInfo.Exists)
                {
                    var fileName = ProcessFileNameInFolder(folderInfo, fileInfo.Name);
                    file.FileName            = fileName;
                    fileInfo.CreationTimeUtc = DateTime.UtcNow;
                    fileInfo.MoveTo(Path.Combine(folderInfo.FullName, fileName));
                    newFile = new FileInfoModel
                    {
                        FileName     = fileInfo.Name,
                        Path         = fileInfo.FullName,
                        DocumentType = destinationFolder.DocumentType,
                        DocumentId   = destinationFolder.DocumentId,
                        Size         = fileInfo.Length,
                        Extension    = fileInfo.Extension,
                        CreatedDate  = DateTime.UtcNow,
                        UpdatedDate  = DateTime.UtcNow
                    };
                }
            }
            catch
            {
            }
            return(newFile);
        }