Пример #1
0
        private bool DeleteFileFromLocalDisk(string fileName, EditionFileType editionFileType)
        {
            var path = Server.MapPath("~/" + editionFileType.FileFullNameInternal(fileName));

            if (!System.IO.File.Exists(path))
            {
                var log = CreateInternalLog($"File not found on {path}!");
                ExternalLogHelper.Log(log, LoggingEventType.Error);

                return(false);
            }

            try
            {
                System.IO.File.Delete(path);
                return(true);
            }
            catch (Exception exc)
            {
                var log = CreateInternalLog(exc);
                ExternalLogHelper.Log(log, LoggingEventType.Error);

                return(false);
            }
        }
Пример #2
0
        private FileOperationResult SaveFileToLocalDisk(EditionFileType fileType, string newFileName, HttpPostedFileBase file)
        {
            var path = Server.MapPath("~/" + fileType.FileFullNameInternal(newFileName));

            if (System.IO.File.Exists(path))
            {
                return(new FileOperationResult
                {
                    Result = OperationResult.AlreadyExists
                });
            }

            try
            {
                file.SaveAs(path);
                return(new FileOperationResult
                {
                    Result = OperationResult.Succeeded,
                    Message = path
                });
            }
            catch (Exception exc)
            {
                var log = CreateInternalLog(exc);
                ExternalLogHelper.Log(log, LoggingEventType.Error);

                return(new FileOperationResult
                {
                    Result = OperationResult.Failed,
                    Message = exc.Message
                });
            }
        }
Пример #3
0
        private FileOperationResult SaveFileToAzureStorage(EditionFileType fileType, string newFileName, HttpPostedFileBase file)
        {
            var blobName = fileType.BlobFullName(newFileName);

            if (_azureStorageService.FileExists(blobName))
            {
                return(new FileOperationResult
                {
                    Result = OperationResult.AlreadyExists
                });
            }

            return(_azureStorageService.UploadFile(blobName, file.ContentType, file.InputStream));
        }
        public static string ComposeFileName(int editionId, string fileName, EditionFileType fileType, string languageCode, string extension)
        {
            fileName = fileName.ToLower();
            fileName = fileName.RemoveNonAlphaNumericsExcept(new[] { '-', '_' });
            fileName = fileName.Replace(" ", "-");
            fileName = fileName.Replace("_", "-");
            fileName = fileName.RemoveDuplicateChars(new [] { "-" });
            if (fileType == EditionFileType.PostShowReport)
            {
                fileName += "-" + languageCode;
            }
            var newFileName = $"{editionId}-{fileName}{extension}";

            return(newFileName);
        }
Пример #5
0
        private bool SaveFileInfo(int entityId, string fileName, EditionFileType editionFileType, string extension, string langCode)
        {
            var fileEntity = new FileEntity
            {
                FileName          = fileName,
                FileExtension     = extension,
                EntityId          = entityId,
                EntityType        = EntityType.Edition.GetDescription(),
                EditionFileType   = editionFileType,
                LanguageCode      = langCode,
                CreatedByFullName = CurrentCedUser.CurrentUser.FullName,
                CreatedByEmail    = CurrentCedUser.CurrentUser.Email
            };

            return(FileServices.CreateFile(fileEntity, 1));
        }
Пример #6
0
 // 3) https://itedata.blob.core.windows.net/ced/edition/files/visitordata/688-ADUsersAndEvents_MA_20160621.xlsx
 public static string BlobFullUrl(this EditionFileType editionFileType, string fileName)
 {
     return(editionFileType.BlobSubDirectory() + fileName);
 }
Пример #7
0
 // 2) edition/files/visitordata/688-ADUsersAndEvents_MA_20160621.xlsx
 public static string BlobFullName(this EditionFileType editionFileType, string fileName)
 {
     return(FileBlobSubdirectory + editionFileType.GetAttribute <FileTypeAttribute>().FolderName.ToLower() + "/" + fileName);
 }
Пример #8
0
 // 1) https://itedata.blob.core.windows.net/ced/edition/files/visitordata/
 private static string BlobSubDirectory(this EditionFileType editionFileType)
 {
     return(FileBlobDirectory + editionFileType.GetAttribute <FileTypeAttribute>().FolderName.ToLower() + "/");
 }
Пример #9
0
 // content/files/visitordata/688-ADUsersAndEvents_MA_20160621.xlsx
 public static string FileFullNameInternal(this EditionFileType editionFileType, string fileName)
 {
     return("content/files/" + editionFileType.GetAttribute <FileTypeAttribute>().FolderName.ToLower() + "/" + fileName);
 }