public static IStorageFile AddFile(Stream contentStream, string folder, string fileName) { FileStorageProvider fs = new FileStorageProvider(SiteFiles.FileStoreKey); IStorageFile file = fs.AddUpdateFile(folder, fileName, contentStream); return(file); }
public static string MakePath(int id) { string idString = id.ToString(); idString = new String('0', 10 - idString.Length) + idString; return(FileStorageProvider.MakePath( idString.Substring(0, 5), idString.Substring(5) )); }
/// <summary> /// 删除附件信息 /// </summary> /// <param name="attachmentID"></param> public static void Delete(Guid attachmentID) { TemporaryAttachment temporaryAttachment = GetTemporaryAttachment(attachmentID); if (temporaryAttachment != null) { CommonDataProvider.Instance.DeleteTemporaryAttachment(attachmentID); FileStorageProvider fs = new FileStorageProvider(FileStoreKey); fs.Delete(MakePath(temporaryAttachment), temporaryAttachment.FileName); } }
/// <summary> /// 上传文件 /// </summary> /// <param name="picture"></param> /// <param name="contentStream"></param> /// <returns></returns> public static DataActionStatus Create(ShowPicture picture, Stream contentStream) { SiteSettings setting = SiteSettingsManager.GetSiteSettings(); picture.ShowPictureID = Guid.NewGuid(); setting.ShowPictures.Add(picture); SiteSettingsManager.Save(setting); FileStorageProvider fs = new FileStorageProvider(FileStoreKey); fs.AddUpdateFile("", picture.FileName, contentStream); return(DataActionStatus.Success); }
public static void DeleteFile(string fileName) { string folder = string.Empty; string file = fileName; if (fileName.Contains(Path.DirectorySeparatorChar.ToString())) { folder = fileName.Substring(0, fileName.LastIndexOf(Path.DirectorySeparatorChar)); file = fileName.Substring(fileName.LastIndexOf(Path.DirectorySeparatorChar) + 1); } FileStorageProvider fs = new FileStorageProvider(SiteFiles.FileStoreKey); fs.Delete(folder, file); }
public static SiteFile GetFile(string folder, string fileName) { FileStorageProvider fs = new FileStorageProvider(SiteFiles.FileStoreKey); IStorageFile file = fs.GetFile(folder, fileName); if (file != null && !IsFileHidden(file.FileName)) { return(new SiteFile(file)); } else { return(null); } }
/// <summary> /// 更新信息 /// </summary> /// <param name="picture"></param> /// <param name="contentStream"></param> /// <returns></returns> public static DataActionStatus Update(ShowPicture picture, Stream contentStream) { SiteSettings setting = SiteSettingsManager.GetSiteSettings(); int index = setting.ShowPictures.FindIndex(delegate(ShowPicture p) { return(p.ShowPictureID == picture.ShowPictureID); }); setting.ShowPictures[index] = picture; SiteSettingsManager.Save(setting); FileStorageProvider fs = new FileStorageProvider(FileStoreKey); fs.AddUpdateFile("", picture.FileName, contentStream); return(DataActionStatus.Success); }
public static void AddFile(CompanyQualification qualification, Stream contentStream) { string name = GlobalSettings.EnsureHtmlEncoded(qualification.QualificationName) + ".rar"; qualification.QualificationFile = MakePath(qualification.CompanyID); //事件触发 FileStorageProvider fs = new FileStorageProvider(FileStoreKey); fs.AddUpdateFile(MakePath(qualification.CompanyID), name, contentStream); qualification.QualificationID = CommonDataProvider.Instance.CreateQualification(qualification); HHCache.Instance.Remove(CacheKeyManager.GetQualificationKey(qualification.QualificationID)); //事件触发 }
public static List <SiteFile> GetFiles(string folder) { List <SiteFile> files = new List <SiteFile>(); FileStorageProvider fs = new FileStorageProvider(SiteFiles.FileStoreKey); foreach (string subFolderPath in fs.GetPaths(folder)) { files.Add(new SiteFile(subFolderPath, "")); } foreach (IStorageFile file in fs.GetFiles(folder, PathSearchOption.TopLevelPathOnly)) { if (!IsFileHidden(file.FileName)) { files.Add(new SiteFile(file)); } } return(files); }
public static void EditFile(CompanyQualification qualification, Stream contentStream) { string name = GlobalSettings.EnsureHtmlEncoded(qualification.QualificationName) + ".rar"; if (contentStream == null) { IStorageFile file = FileStorageProvider.Instance(CompanyQualifications.FileStoreKey) .GetFile(CompanyQualifications.MakePath(qualification.CompanyID), GlobalSettings.EnsureHtmlEncoded(qualification.QualificationFile) + ".rar"); contentStream = file.OpenReadStream(); } //事件触发 FileStorageProvider fs = new FileStorageProvider(FileStoreKey); fs.AddUpdateFile(MakePath(qualification.CompanyID), name, contentStream); qualification.QualificationFile = MakePath(qualification.CompanyID); CommonDataProvider.Instance.UpdateQualification(qualification); HHCache.Instance.Remove(CacheKeyManager.GetQualificationKey(qualification.QualificationID)); //事件触发 }
/// <summary> /// 创建临时附件 /// </summary> /// <param name="attachment"></param> public static void Create(TemporaryAttachment attachment, Stream stream) { if (GlobalSettings.IsImage(attachment.FileName)) { try { ImageInfo info = new ImageInfo(stream); info.Check(); attachment.Width = info.Width; attachment.Height = info.Height; } catch { } } attachment.ContentType = MimeTypeManager.GetMimeType(attachment.FileName); attachment.ContentSize = stream.Length; CommonDataProvider.Instance.CreateUpdateTemporaryAttachment(attachment, DataProviderAction.Create); if (stream != null) { FileStorageProvider fs = new FileStorageProvider(FileStoreKey); fs.AddUpdateFile(MakePath(attachment), attachment.FileName, stream); } }
public static void DeleteFolder(string folderName) { FileStorageProvider fs = new FileStorageProvider(SiteFiles.FileStoreKey); fs.Delete(folderName); }
/// <summary> /// 通过Url获取IStorageFile /// </summary> /// <param name="url"></param> /// <returns></returns> public static IStorageFile GetStorageFileByUrl(string url) { if (url.Contains("?")) { url = url.Substring(0, url.IndexOf("?")); } string path = url; int index = path.IndexOf("__key/"); if (index < 0) { return(null); } path = path.Substring(index + 6); index = path.IndexOf('/'); if (index < 0) { return(null); } string fileStoreKey = path.Substring(0, index); index = path.LastIndexOf('/'); if (index < 0) { return(null); } string fileName = path.Substring(index + 1); if (path.Length - (fileStoreKey.Length + fileName.Length + 2) <= 0) { path = string.Empty; } else { path = path.Substring(fileStoreKey.Length + 1, path.Length - (fileStoreKey.Length + fileName.Length + 2)); } fileStoreKey = GlobalSettings.UrlDecodePathComponent(fileStoreKey); fileName = GlobalSettings.UrlDecodeFileComponent(fileName); path = GlobalSettings.UrlDecodePathComponent(path); if (GlobalSettings.IsNullOrEmpty(fileStoreKey) || GlobalSettings.IsNullOrEmpty(fileName)) { return(null); } FileStorageProvider fileProvider = new FileStorageProvider(fileStoreKey); if (fileProvider != null) { return(fileProvider.GetFile(path, fileName)); } else { return(null); } }
public string GetDownloadUrl() { return(FileStorageProvider.GetGenericDownloadUrl(this)); }
public static string MakePath(Guid guid) { return(FileStorageProvider.MakePath(guid.ToString().Split(new char[] { '-' }))); }
/// <summary> /// 生成路径 /// </summary> /// <param name="attachment"></param> /// <returns></returns> public static string MakePath(TemporaryAttachment attachment) { return(FileStorageProvider.MakePath(new string[] { attachment.UserID.ToString(), attachment.AttachmentType.ToString() })); }