# System.Extension.Core.Storage **Repository Path**: zhenlei520/System.Extension.Core.Storage ## Basic Information - **Project Name**: System.Extension.Core.Storage - **Description**: 基于netstandard标准的存储服务,目前提供aliyun、qiniu仓库的存储服务 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: 2.1.0-preview.200829.x0012 - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2020-08-31 - **Last Updated**: 2022-07-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # System.Extension.Core.Storage System.Extension.Core.Storage仓库是一个netstandard2.0、netstandard2.1的基础类库,针对存储库的扩展,其依赖指定的Microsoft版本,为保证安全性,建议使用中版本号参考Microsoft系列的版本号一致 其中封装了阿里云仓储、七牛云仓储,为其提供了bucket管理,文件管理等方法 System.Extension.Core.Storage.Aliyun System.Extension.Core.Storage.Qiniu 上述存储类库分别实现了以下方法: #### 通过上方的配置可以在控制器中使用IStorageProvider、IPictureProvider、IBucketProvider三个接口的方法 1. IStorageProvider 文件存储管理 1. IPictureProvider 图片存储管理 1. IBucketProvider 空间管理 #### 其中IPictureProvider对外提供了以下方法: 1. 根据图片base64上传 Upload (暂不提供图片处理,仅支持普通的图片上传) #### 其中IStorageProvider对外提供了以下方法: 1. 根据文件流上传 UploadStream 1. 根据文件字节数组上传 UploadByteArray 1. 根据文件Token上传 UploadByToken 1. 得到上传文件凭证 GetUploadCredentials 1. 得到管理凭证 GetManageToken 1. 检查文件是否存在 Exist 1. 获取文件信息 Get 1. 获取文件信息集合(超过1000个时会自动分批获取) GetList 1. 根据文件key删除 Remove 1. 根据文件key集合删除(超过1000个时会自动分批删除) RemoveRange 1. 复制文件(两个文件需要在同一账号下) CopyTo 1. 复制文件集合(两个文件需要在同一账号下,超过1000个时会自动分批复制) CopyRangeTo 1. 移动文件(两个文件需要在同一账号下) Move 1. 批量移动文件(两个文件需要在同一账号下,超过1000个时会自动分批移动) MoveRange 1. 得到文件的访问地址 GetVisitUrl 1. 下载文件到本地 Download 1. 下载文件流 DownloadStream 1. 设置生存时间(超时会自动删除) SetExpire 2. 批量设置生存时间(超时会自动删除) SetExpireRange 1. 修改文件MimeType ChangeMime 1. 批量更改文件mime ChangeMimeRange 1. 修改文件存储类型 ChangeType 1. 批量更改文件类型 ChangeTypeRange 1. 设置文件访问权限 SetPermiss(不支持) 1. 获取文件的访问权限(不支持) 1. 获取指定前缀的文件列表 ListFiles 1. 抓取资源到空间 FetchFile #### 其中IBucketProvider对外提供以下方法 1. 获取空间列表 GetBucketList 1. 创建空间 Create 1. 设置空间的镜像源 SetSource 1. 获取空间域名信息 GetHost 1. 删除空间 Delete 1. 判断空间是否存在 Exist 1. 设置空间访问权限 SetPermiss 1. 获取空间的访问权限 GetPermiss(不支持) 1. 设置防盗链 SetReferer(不支持) 1. 得到防盗链配置 GetReferer(不支持) 1. 清空防盗链规则 ClearReferer(不支持) 1. 设置空间访问权限 SetTag 1. 得到空间标签 GetTags 1. 清除空间标签 ClearTag ### 以上版本包名并未修改,会与之前的包名有冲突,为了方便以后的使用,约定之后的包按照以下规则命名: 1. 预览版:*.*.*-preview.yyMMdd.x***[1-3] 1. 正式版:*.*.*-rc*.yyMMdd.x***[1-3] [Gitee地址](https://gitee.com/zhenlei520/System.Extension.Core.Storage) [Github地址](https://github.com/zhenlei520/System.Extension.Core.Storage) ## Stargazers over time [![Stargazers over time](https://starchart.cc/zhenlei520/System.Extension.Core.Storage.svg)](https://starchart.cc/zhenlei520/System.Extension.Core.Storage)