该源码是一个基于.Net Core和Vue.js的快速业务模块化前后端分离开发框架,包含923个文件,涵盖了685个C#代码文件、66个项目文件、54个Vue组件文件、49个JavaScript文件、27个JSON配置文件、18个属性文件、7个PNG图片文件、3个JPG图片文件、3个PowerShell脚本文件和2个PDF文档。NetModular框架专为高效构建模块化业务系统设计,适用于需要快速开发前后端分离应用的场景。
关键词
.Net Core Vue.js 前后端分离 快速开发
目录结构
├── .gitattributes
├── .gitignore
├── LICENSE
├── NetModular.sln
├── build
├── module.build.targets
├── docs
├── NetModular生态.xmind
├── img
├── 20201108235810.png
├── 20201108235849.png
├── 20201108235914.png
├── 20201108235933.png
├── airpay.jpg
├── code.png
├── logo.png
├── qq.jpg
├── wechat.jpg
├── wechat_group.png
├── readme.txt
├── src
├── Admin
├── Directory.Build.props
├── Library
├── Application
├── AccountService
├── AccountService.cs
├── IAccountService.cs
├── ViewModels
├── AccountAddModel.cs
├── AccountRoleBindModel.cs
├── AccountSkinUpdateModel.cs
├── AccountSyncModel.cs
├── AccountUpdateModel.cs
├── UpdatePasswordModel.cs
├── _MapperConfig.cs
├── Application.csproj
├── AuditInfoService
├── AuditInfoService.cs
├── IAuditInfoService.cs
├── AuthService
├── AuthService.cs
├── Defaults
├── DefaultLoginLogHandler.cs
├── DefaultPhoneVerifyCodeProvider.cs
├── DefaultVerifyCodeProvider.cs
├── IAuthService.cs
├── LoginHandler
├── DefaultCustomLoginHandler.cs
├── DefaultEmailLoginHandler.cs
├── DefaultPhoneLoginHandler.cs
├── DefaultUserNameLoginHandler.cs
├── DefaultUserNameOrEmailLoginHandler.cs
├── LoginHandlerAbstract.cs
├── ResultModels
├── AuthInfoModel.cs
├── CacheService
├── CacheService.cs
├── ICacheService.cs
├── ConfigService
├── ConfigService.cs
├── IConfigService.cs
├── ResultModels
├── UIConfigResultModel.cs
├── ViewModels
├── ConfigUpdateModel.cs
├── FileService
├── FileService.cs
├── IFileService.cs
├── ViewModels
├── FileUploadModel.cs
├── LogService
├── ILogService.cs
├── LogService.cs
├── MenuService
├── IMenuService.cs
├── MenuService.cs
├── ResultModels
├── MenuTreeResultModel.cs
├── ViewModels
├── MenuAddModel.cs
├── MenuUpdateModel.cs
├── _MapperConfig.cs
├── MimeService
├── IMimeService.cs
├── MimeService.cs
├── ViewModels
├── MimeAddModel.cs
├── MimeUpdateModel.cs
├── ModuleService
├── IModuleService.cs
├── ModuleService.cs
├── ViewModels
├── ModuleOptionsUpdateModel.cs
├── ModuleSyncModel.cs
├── RoleService
├── IRoleService.cs
├── RoleService.cs
├── ViewModels
├── RoleAddModel.cs
├── RoleMenuBindModel.cs
├── RolePageBindModel.cs
├── RolePermissionBindModel.cs
├── RoleUpdateModel.cs
├── _MapperConfig.cs
├── ToolService
├── IToolService.cs
├── ToolService.cs
├── Domain
├── Account
├── AccountEntity.Extend.cs
├── AccountEntity.cs
├── AccountStatus.cs
├── IAccountRepository.cs
├── Models
├── AccountQueryModel.cs
├── AccountAuthInfo
├── AccountAuthInfoEntity.cs
├── IAccountAuthInfoRepository.cs
├── AccountConfig
├── AccountConfigEntity.cs
├── IAccountConfigRepository.cs
├── AccountRole
├── AccountRoleEntity.cs
├── IAccountRoleRepository.cs
├── AuditInfo
├── AuditInfoEntity.Extend.cs
├── AuditInfoEntity.cs
├── IAuditInfoRepository.cs
├── Models
├── AuditInfoQueryModel.cs
├── Config
├── ConfigEntity.Extend.cs
├── ConfigEntity.cs
├── IConfigRepository.cs
├── Models
├── ConfigQueryModel.cs
├── Domain.csproj
├── File
├── FileEntity.Extend.cs
├── FileEntity.cs
├── IFileRepository.cs
├── Models
├── FileQueryModel.cs
├── FileOwner
├── FileOwnerEntity.cs
├── IFileOwnerRepository.cs
├── LoginLog
├── ILoginLogRepository.cs
├── LoginLogEntity.Extend.cs
├── LoginLogEntity.cs
├── Models
├── LoginLogQueryModel.cs
├── Menu
├── IMenuRepository.cs
├── MenuEntity.Extend.cs
├── MenuEntity.cs
├── MenuTarget.cs
├── MenuType.cs
├── Models
├── MenuQueryModel.cs
├── Mime
├── IMimeRepository.cs
├── MimeEntity.cs
├── Models
├── MimeQueryModel.cs
├── Module
├── IModuleRepository.cs
├── ModuleEntity.Extend.cs
├── ModuleEntity.cs
├── Role
├── IRoleRepository.cs
├── Models
├── RoleQueryModel.cs
├── RoleEntity.cs
├── RoleButton
├── IRoleButtonRepository.cs
├── RoleButtonEntity.cs
├── RoleMenu
├── IRoleMenuRepository.cs
├── RoleMenuEntity.cs
├── RolePage
├── IRolePageRepository.cs
├── RolePageEntity.cs
├── RolePermission
├── IRolePermissionRepository.cs
├── RolePermissionEntity.cs
├── Tenant
├── ITenantRepository.cs
├── TenantEntity.cs
├── Infrastructure
├── AccountPermissionResolver
├── AccountMenuItem.cs
├── DefaultAccountPermissionResolver.cs
├── IAccountPermissionResolver.cs
├── MenuComparer.cs
├── AdminConfig.cs
├── CacheKeys.cs
├── ConfigStorageProvider.cs
├── Infrastructure.csproj
├── ModuleServicesConfigurator.cs
├── Repositories
├── AdminDbContext.cs
├── MySql
├── AccountAuthInfoRepository.cs
├── AccountConfigRepository.cs
├── AccountRepository.cs
├── AccountRoleRepository.cs
├── AuditInfoRepository.cs
├── ConfigRepository.cs
├── FileOwnerRepository.cs
├── FileRepository.cs
├── LoginLogRepository.cs
├── MenuRepository.cs
├── MimeRepository.cs
├── ModuleRepository.cs
├── RoleButtonRepository.cs
├── RoleMenuRepository.cs
├── RolePageRepository.cs
├── RolePermissionRepository.cs
├── RoleRepository.cs
├── Sql
├── AuditInfoSql.cs
├── TenantRepository.cs
├── PostgreSQL
├── AccountAuthInfoRepository.cs
├── AccountConfigRepository.cs
├── AccountRepository.cs
├── AccountRoleRepository.cs
├── AuditInfoRepository.cs
├── ConfigRepository.cs
├── FileOwnerRepository.cs
├── FileRepository.cs
├── LoginLogRepository.cs
├── MenuRepository.cs
├── MimeRepository.cs
├── ModuleRepository.cs
├── RoleButtonRepository.cs
├── RoleMenuRepository.cs
├── RolePageRepository.cs
├── RolePermissionRepository.cs
├── RoleRepository.cs
├── Sql
├── AuditInfoSql.cs
├── TenantRepository.cs
├── SQLite
├── AccountAuthInfoRepository.cs
├── AccountConfigRepository.cs
├── AccountRepository.cs
├── AccountRoleRepository.cs
├── AuditInfoRepository.cs
├── ConfigRepository.cs
├── FileOwnerRepository.cs
├── FileRepository.cs
├── LoginLogRepository.cs
├── MenuRepository.cs
├── MimeRepository.cs
├── ModuleRepository.cs
├── RoleButtonRepository.cs
├── RoleMenuRepository.cs
├── RolePageRepository.cs
├── RolePermissionRepository.cs
├── RoleRepository.cs
├── TenantRepository.cs
├── SqlServer
├── AccountAuthInfoRepository.cs
├── AccountConfigRepository.cs
├── AccountRepository.cs
├── AccountRoleRepository.cs
├── AuditInfoRepository.cs
├── ConfigRepository.cs
├── FileOwnerRepository.cs
├── FileRepository.cs
├── LoginLogRepository.cs
├── MenuRepository.cs
├── MimeRepository.cs
├── ModuleRepository.cs
├── RoleButtonRepository.cs
├── RoleMenuRepository.cs
├── RolePageRepository.cs
├── RolePermissionRepository.cs
├── RoleRepository.cs
├── Sql
├── AuditInfoSql.cs
├── TenantRepository.cs
├── Quartz
├── ModuleApiRequestCountSyncTask.cs
├── Quartz.csproj
├── UI
├── module-admin
├── .browserslistrc
├── .eslintrc.js
├── .prettierrc
├── .vscode
├── settings.json
├── babel.config.js
├── package.json
├── postcss.config.js
├── script
├── npm_install.ps1
├── npm_publish.ps1
├── npm_update.ps1
├── src
├── api
├── components
├── account.js
├── auditInfo.js
├── auth.js
├── cache.js
├── config.js
├── file.js
├── log.js
├── menu.js
├── mime.js
├── module.js
├── permission.js
├── role.js
├── tool.js
├── index.js
├── components
├── config-admin
├── index.vue
├── enum-checkbox
├── index.vue
├── enum-radio
├── index.vue
├── enum-select
├── index.vue
├── file-download
├── index.vue
├── file-img
├── index.vue
├── file-upload-img
├── index.vue
├── file-upload
├── index.vue
├── index.js
├── loginmode-select
├── index.vue
├── module-select
├── index.vue
├── platform-select
├── index.vue
├── role-select
├── index.vue
├── upload-mixins.js
├── config
├── index.js
├── index.js
├── main.js
├── module.js
├── routes
├── index.js
├── store
├── index.js
├── views
├── account
├── components
├── save
├── index.vue
├── index
├── cols.js
├── index.vue
├── page.js
├── auditInfo
├── components
├── details
├── index.vue
├── index
├── cols.js
├── index.vue
├── page.js
├── button
├── permission-bind
├── index.vue
├── cache
├── index
├── cols.js
├── index.vue
├── page.js
├── config
├── index.vue
├── library
├── components
├── auth
├── index.vue
├── component
├── index.vue
├── path
├── index.vue
├── quartz
├── index.vue
├── system
├── index.vue
├── form-mixins.js
├── index.vue
├── module
├── index.vue
├── page.js
├── file
├── index
├── cols.js
├── index.vue
├── page.js
├── home
├── components
├── bottom
├── index.vue
├── top-left
├── index.vue
├── top-right
├── index.vue
├── index.vue
├── page.js
├── icon
├── index.vue
├── page.js
├── log
├── login-log
├── cols.js
├── index.vue
├── page.js
├── menu
├── components
├── add
├── components
├── link
├── index.vue
├── mixins.js
├── node
├── index.vue
├── route
├── index.vue
├── index.vue
├── edit
├── components
├── link
├── index.vue
├── mixins.js
├── node
├── index.vue
├── route
├── index.vue
├── index.vue
├── tree
├── index.vue
├── index
├── cols.js
├── index.vue
├── page.js
├── mime
├── components
├── save
├── index.vue
├── index
├── cols.js
├── index.vue
├── page.js
├── module
├── components
├── page-list
├── index.vue
├── permission-list
├── cols.js
├── index.vue
├── index
├── index.vue
├── page.js
├── role
├── components
├── menu-bind
├── index.vue
├── page-bind
├── index.vue
├── platform-bind
├── index.vue
├── save
├── index.vue
├── tree
├── index.vue
├── index
├── index.vue
├── page.js
├── vue.config.js
├── Web
├── Controllers
├── AccountController.cs
├── AuditInfoController.cs
├── AuthController.cs
├── CacheController.cs
├── ConfigController.cs
├── FileController.cs
├── LogController.cs
├── MenuController.cs
├── MimeController.cs
├── ModuleController.cs
├── PermissionController.cs
├── RoleController.cs
├── ToolController.cs
├── Core
├── AuditingHandler.cs
├── DefaultLoginClaimsExtendProvider.cs
├── PermissionValidateHandler.cs
├── SingleAccountLoginHandler.cs
├── ModuleController.cs
├── ModuleInitializer.cs
├── Validators
├── AccountAddValidator.cs
├── AccountUpdateValidator.cs
├── MenuAddValidator.cs
├── MenuUpdateValidator.cs
├── Web.csproj
├── WebHost
├── Program.cs
├── Properties
├── launchSettings.json
├── Startup.cs
├── WebHost.csproj
├── _modules
├── 00_Admin
├── InitData
├── Account.json
├── AccountConfig.json
├── AccountRole.json
├── Config.json
├── Menu.json
├── Mime.json
├── Module.json
├── Role.json
├── RoleButton.json
├── RoleMenu.json
├── RolePage.json
├── RolePermission.json
├── _module.json
├── appsettings.Development.json
├── appsettings.json
├── Framework
├── Auth
├── Auth.Abstractions
├── AccountType.cs
├── Auth.Abstractions.csproj
├── AuthConfig.cs
├── ClaimsName.cs
├── ILoginClaimsExtendProvider.cs
├── ILoginHandler.cs
├── ILoginInfo.cs
├── ILoginInfoDetailsBuilder.cs
├── IPermissionValidateHandler.cs
├── ISingleAccountLoginHandler.cs
├── ITenantResolver.cs
├── LoginHandlers
├── ICustomLoginHandler.cs
├── IEmailLoginHandler.cs
├── IPhoneLoginHandler.cs
├── IUserNameLoginHandler.cs
├── IUserNameOrEmailLoginHandler.cs
├── LoginModels
├── CustomLoginModel.cs
├── EmailLoginModel.cs
├── LoginModel.cs
├── LoginResultModel.cs
├── PhoneLoginModel.cs
├── PhoneVerifyCodeSendModel.cs
├── UserNameLoginModel.cs
├── UserNameOrEmailLoginModel.cs
├── VerifyCodeModel.cs
├── PasswordHandler
├── IPasswordHandler.cs
├── Md5PasswordHandler.cs
├── Platform.cs
├── Providers
├── ILoginLogProvider.cs
├── IPhoneVerifyCodeProvider.cs
├── IVerifyCodeProvider.cs
├── Auth.Jwt
├── Auth.Jwt.csproj
├── JwtLoginHandler.cs
├── JwtTokenModel.cs
├── MyJwtSecurityTokenHandler.cs
├── ServiceCollectionExtensions.cs
├── Auth.Web
├── ApiControllerAbstract.cs
├── Attributes
├── AuditingAttribute.cs
├── CommonAttribute.cs
├── DisableAuditingAttribute.cs
├── PermissionValidateAttribute.cs
├── Auth.Web.csproj
├── ControllerAbstract.cs
├── DefaultTenantResolver.cs
├── IAuditingHandler.cs
├── LoginInfo.cs
├── PermissionCollection.cs
├── PermissionDescriptor.cs
├── PermissionTreeModel.cs
├── Directory.Build.props
├── Cache
├── Cache.Abstractions
├── Cache.Abstractions.csproj
├── CacheConfig.cs
├── CacheKeyDescriptor.cs
├── CacheKeyDescriptorCollection.cs
├── CacheProvider.cs
├── ICacheHandler.cs
├── Cache.Integration
├── Cache.Integration.csproj
├── ServiceCollectionExtensions.cs
├── Cache.MemoryCache
├── Cache.MemoryCache.csproj
├── MemoryCacheHandler.cs
├── Cache.Redis
├── Cache.Redis.csproj
├── DefaultRedisSerializer.cs
├── IRedisSerializer.cs
├── RedisCacheHandler.cs
├── RedisDatabase.cs
├── RedisHelper.cs
├── Directory.Build.props
├── Config
├── Config.Abstractions
├── Config.Abstractions.csproj
├── ConfigCollection.cs
├── ConfigDescriptor.cs
├── ConfigType.cs
├── IConfig.cs
├── IConfigChangeEvent.cs
├── IConfigCollection.cs
├── IConfigProvider.cs
├── IConfigStorageProvider.cs
├── Impl
├── ComponentConfig.cs
├── PathConfig.cs
├── SystemConfig.cs
├── ServiceCollectionExtensions.cs
├── Config.Core
├── Config.Core.csproj
├── ConfigProvider.cs
├── MemoryConfigStorageProvider.cs
├── ServiceCollectionExtensions.cs
├── Config.Redis
├── Config.Redis.csproj
├── ConfigProvider.cs
├── ServiceCollectionExtensions.cs
├── Directory.Build.props
├── Data
├── Core
├── Data.Abstractions
├── Attributes
├── ColumnAttribute.cs
├── IgnoreAttribute.cs
├── KeyAttribute.cs
├── LengthAttribute.cs
├── MaxAttribute.cs
├── NullableAttribute.cs
├── PrecisionAttribute.cs
├── PrefixIgnoreAttribute.cs
├── TableAttribute.cs
├── Data.Abstractions.csproj
├── Entities
├── EntityDescriptorCollection.cs
├── EntitySql.cs
├── IColumnDescriptor.cs
├── IColumnDescriptorCollection.cs
├── IEntity.cs
├── IEntityDescriptor.cs
├── IEntitySqlBuilder.cs
├── IPrimaryKeyDescriptor.cs
├── ITenant.cs
├── Enums
├── JoinType.cs
├── PrimaryKeyType.cs
├── QueryOperator.cs
├── SortType.cs
├── SqlDialect.cs
├── IDatabaseCreateEvents.cs
├── IDbContext.cs
├── IDbContextOptions.cs
├── IDbSet.cs
├── IEntityObserver.cs
├── IEntityObserverHandler.cs
├── IQueryParameters.cs
├── IRepository.cs
├── ISqlAdapter.cs
├── IUnitOfWork.cs
├── Options
├── DbModuleOptions.cs
├── DbOptions.cs
├── Pagination
├── Paging.cs
├── Sort.cs
├── SqlQueryable
├── GroupByQueryable
├── IGroupByQueryable.cs
├── IGroupByQueryable1.cs
├── IGroupByQueryable10.cs
├── IGroupByQueryable2.cs
├── IGroupByQueryable3.cs
├── IGroupByQueryable4.cs
├── IGroupByQueryable5.cs
├── IGroupByQueryable6.cs
├── IGroupByQueryable7.cs
├── IGroupByQueryable8.cs
├── IGroupByQueryable9.cs
├── INetSqlGrouping.cs
├── INetSqlGrouping1.cs
├── INetSqlGrouping10.cs
├── INetSqlGrouping2.cs
├── INetSqlGrouping3.cs
├── INetSqlGrouping4.cs
├── INetSqlGrouping5.cs
├── INetSqlGrouping6.cs
├── INetSqlGrouping7.cs
├── INetSqlGrouping8.cs
├── INetSqlGrouping9.cs
├── INetSqlQueryable.cs
├── INetSqlQueryable1.cs
├── INetSqlQueryable10.cs
├── INetSqlQueryable2.cs
├── INetSqlQueryable3.cs
├── INetSqlQueryable4.cs
├── INetSqlQueryable5.cs
├── INetSqlQueryable6.cs
├── INetSqlQueryable7.cs
├── INetSqlQueryable8.cs
├── INetSqlQueryable9.cs
├── Data.Core
├── Data.Core.csproj
├── DbConstants.cs
├── DbContext.cs
├── DbContextOptionsAbstract.cs
├── DbSet.cs
├── Entities
├── ColumnDescriptor.cs
├── ColumnDescriptorCollection.cs
├── Entity.cs
├── EntityDescriptor.cs
├── EntitySqlBuilder.cs
├── Extend
├── EntityBase.cs
├── EntityBaseWithSoftDelete.cs
├── EntityWithSoftDelete.cs
├── PrimaryKeyDescriptor.cs
├── EntityObserverHandler.cs
├── ExpressionResolve
├── ExpressionResolver.cs
├── Extensions
├── EntityDescriptorExtension.cs
├── RepositoryAbstract.cs
├── SqlAdapterAbstract.cs
├── SqlQueryable
├── GroupByQueryable
├── GroupByQueryable1.cs
├── GroupByQueryable10.cs
├── GroupByQueryable2.cs
├── GroupByQueryable3.cs
├── GroupByQueryable4.cs
├── GroupByQueryable5.cs
├── GroupByQueryable6.cs
├── GroupByQueryable7.cs
├── GroupByQueryable8.cs
├── GroupByQueryable9.cs
├── GroupByQueryableAbstract.cs
├── Internal
├── GroupByJoinDescriptor.cs
├── QueryBody.cs
├── QueryBuilder.cs
├── QueryJoinDescriptor.cs
├── QueryParameters.cs
├── QueryWhere.cs
├── NetSqlQueryable1.cs
├── NetSqlQueryable10.cs
├── NetSqlQueryable2.cs
├── NetSqlQueryable3.cs
├── NetSqlQueryable4.cs
├── NetSqlQueryable5.cs
├── NetSqlQueryable6.cs
├── NetSqlQueryable7.cs
├── NetSqlQueryable8.cs
├── NetSqlQueryable9.cs
├── NetSqlQueryableAbstract.cs
├── UnitOfWork.cs
├── Db
├── Data.MySql
├── Data.MySql.csproj
├── MySqlAdapter.cs
├── MySqlDbContextOptions.cs
├── Data.PostgreSQL
├── Data.PostgreSQL.csproj
├── PostgreSQLAdapter.cs
├── PostgreSQLDbContextOptions.cs
├── Data.SQLite
├── Data.SQLite.csproj
├── GuidTypeHandler.cs
├── SQLiteAdapter.cs
├── SQLiteDbContextOptions.cs
├── Data.SqlServer
├── Data.SqlServer.csproj
├── SqlServerAdapter.cs
├── SqlServerDbContextOptions.cs
├── Directory.Build.props
├── Extend
├── Data.Integration
├── Data.Integration.csproj
├── ServiceCollectionExtensions.cs
├── Data.Query
├── Data.Query.csproj
├── ExportModel.cs
├── QueryModel.cs
├── QueryModelExtensions.cs
├── QueryPagingModel.cs
├── QuerySortModel.cs
├── Directory.Build.props
├── Excel
├── Directory.Build.props
├── Excel.Abstractions
├── Excel.Abstractions.csproj
├── ExcelConfig.cs
├── ExcelHandlerAbstract.cs
├── ExcelProvider.cs
├── IExcelExportHandler.cs
├── IExcelHandler.cs
├── Excel.Aspose
├── Excel.Aspose.csproj
├── Excel.EPPlus
├── EPPlusExcelExportHandler.cs
├── EPPlusExcelHandler.cs
├── Excel.EPPlus.csproj
├── Excel.Integration
├── Excel.Integration.csproj
├── ServiceCollectionExtensions.cs
├── Excel.NPOI
├── Excel.NPOI.csproj
├── Host
├── Directory.Build.props
├── Host.Api
├── Class1.cs
├── Host.Api.csproj
├── Host.Electron
├── Host.Electron.csproj
├── HostBuilder.cs
├── Host.Generic
├── Host.Generic.csproj
├── HostBuilder.cs
├── ServiceCollectionExtensions.cs
├── Host.Web
├── ApplicationBuilderExtensions.cs
├── DefaultStartLogoProvider.cs
├── Host.Web.csproj
├── HostBuilder.cs
├── IStartLogoProvider.cs
├── Middleware
├── ExceptionHandleMiddleware.cs
├── ExceptionHandleMiddlewareExtensions.cs
├── Options
├── HostOptions.cs
├── ServiceCollectionExtensions.cs
├── StartupAbstract.cs
├── Logging
├── Directory.Build.props
├── Logging.Serilog.GenericHost
├── GenericHostBuilderExtensions.cs
├── Logging.Serilog.GenericHost.csproj
├── Logging.Serilog
├── Logging.Serilog.csproj
├── WebHostBuilderExtensions.cs
├── MQ
├── Directory.Build.props
├── MQ.RabbitMQ
├── Consumer.cs
├── DefaultExchange.cs
├── MQ.RabbitMQ.csproj
├── RabbitMQClient.cs
├── RabbitMQConfig.cs
├── RabbitMQDeclareSettings.cs
├── ServiceCollectionExtensions.cs
├── Mapper
├── Directory.Build.props
├── Mapper.AutoMapper
├── IMapperConfig.cs
├── Mapper.AutoMapper.csproj
├── MapperConfigurationExpression.cs
├── ServiceCollectionExtensions.cs
├── Module
├── Directory.Build.props
├── Module.Abstractions
├── IModuleAssemblyDescriptor.cs
├── IModuleCollection.cs
├── IModuleDescriptor.cs
├── IModuleServicesConfigurator.cs
├── Module.Abstractions.csproj
├── ModuleCollectionAbstract.cs
├── ModuleEnumDescriptor.cs
├── ModuleInitDataScriptDescriptor.cs
├── Module.AspNetCore
├── ApplicationBuilderExtensions.cs
├── IModuleInitializer.cs
├── Module.AspNetCore.csproj
├── ModuleAssemblyDescriptor.cs
├── ModuleCollection.cs
├── ModuleDescriptor.cs
├── ServiceCollectionExtensions.cs
├── Module.GenericHost
├── Module.GenericHost.csproj
├── ModuleAssemblyDescriptor.cs
├── ModuleCollection.cs
├── ModuleDescriptor.cs
├── ServiceCollectionExtensions.cs
├── OSS
├── Directory.Build.props
├── OSS.Abstractions
├── AliyunConfig.cs
├── FileObject.cs
├── IFileStorageProvider.cs
├── MinioConfig.cs
├── OSS.Abstractions.csproj
├── OSSConfig.cs
├── OSSProvider.cs
├── QiniuConfig.cs
├── OSS.Aliyun
├── AliyunFileStorageProvider.cs
├── AliyunHelper.cs
├── OSS.Aliyun.csproj
├── OSS.Integration
├── OSS.Integration.csproj
├── ServiceCollectionExtensions.cs
├── OSS.Local
├── LocalFileStorageProvider.cs
├── OSS.Local.csproj
├── OSS.Minio
├── MinioFileStorageProvider.cs
├── MinioHelper.cs
├── OSS.Minio.csproj
├── OSS.Qiniu.SDK
├── CDN
├── BandwidthInfo.cs
├── BandwidthRequest.cs
├── BandwidthResult.cs
├── CdnManager.cs
├── FluxInfo.cs
├── FluxRequest.cs
├── FluxResult.cs
├── LogListInfo.cs
├── LogListRequest.cs
├── LogListResult.cs
├── PrefetchInfo.cs
├── PrefetchRequest.cs
├── PrefetchResult.cs
├── RefreshInfo.cs
├── RefreshRequest.cs
├── RefreshResult.cs
├── Http
├── ContentType.cs
├── HttpCode.cs
├── HttpManager.cs
├── HttpResult.cs
├── UrlHelper.cs
├── OSS.Qiniu.SDK.csproj
├── QiniuCSharpSDK.cs
├── Storage
├── BatchInfo.cs
├── BatchResult.cs
├── BucketInfo.cs
├── BucketManager.cs
├── BucketResult.cs
├── BucketsResult.cs
├── ChunkUnit.cs
├── Config.cs
├── DomainsResult.cs
├── DownloadManager.cs
├── FetchInfo.cs
├── FetchResult.cs
├── FileInfo.cs
├── FormUploader.cs
├── ListInfo.cs
├── ListItem.cs
├── ListResult.cs
├── OperationManager.cs
├── PfopInfo.cs
├── PfopResult.cs
├── PrefopResult.cs
├── PutExtra.cs
├── PutPolicy.cs
├── QiniuException.cs
├── ResumableUploader.cs
├── ResumeContext.cs
├── ResumeHelper.cs
├── ResumeInfo.cs
├── StatResult.cs
├── UploadController.cs
├── UploadManager.cs
├── UploadProgressHandler.cs
├── Zone.cs
├── ZoneHelper.cs
├── ZoneInfo.cs
├── Util
├── Auth.cs
├── Base64.cs
├── CRC32.cs
├── ETag.cs
├── Hashing.cs
├── LabMD5.cs
├── Mac.cs
├── Signature.cs
├── StringHelper.cs
├── UnixTimestamp.cs
├── UpToken.cs
├── UrlHelper.cs
├── UserEnv.cs
├── OSS.Qiniu
├── OSS.Qiniu.csproj
├── QiniuFileStorageProvider.cs
├── QiniuHelper.cs
├── QiniuTokenManager.cs
├── Pdf
├── Directory.Build.props
├── Pdf.Abstractions
├── IPdfHandler.cs
├── Pdf.Abstractions.csproj
├── PdfConfig.cs
├── PdfProvider.cs
├── Pdf.Integration
├── Pdf.Integration.csproj
├── ServiceCollectionExtensions.cs
├── Pdf.iText
├── Pdf.iText.csproj
├── PdfHandler.cs
├── iTextHelper.cs
├── Quartz
├── Directory.Build.props
├── Quartz.Abstractions
├── IQuartzModuleCollection.cs
├── IQuartzServer.cs
├── ITask.cs
├── ITaskExecutionContext.cs
├── ITaskLogger.cs
├── Quartz.Abstractions.csproj
├── QuartzConfig.cs
├── QuartzConfigChangedEvent.cs
├── QuartzModuleDescriptor.cs
├── QuartzProvider.cs
├── QuartzSerializerType.cs
├── QuartzTaskDescriptor.cs
├── TaskAbstract.cs
├── TaskExecutionContext.cs
├── Quartz.Core
├── JobFactory.cs
├── Quartz.Core.csproj
├── QuartzAppShutdownHandler.cs
├── QuartzModuleCollection.cs
├── QuartzServer.cs
├── ServiceCollectionExtensions.cs
├── TaskLogger.cs
├── Swagger
├── Directory.Build.props
├── Swagger.Core
├── ApplicationBuilderExtensions.cs
├── Conventions
├── ApiExplorerGroupPerVersionConvention.cs
├── Extensions
├── ModuleDescriptorExtensions.cs
├── Filters
├── DescriptionDocumentFilter.cs
├── IgnorePropertySchemaFilter.cs
├── LowercaseDocumentFilter.cs
├── ServiceCollectionExtensions.cs
├── Swagger.Core.csproj
├── Utils
├── Directory.Build.props
├── Utils.Core
├── Abstracts
├── CollectionAbstract.cs
├── Attributes
├── IgnorePropertyAttribute.cs
├── ScopedAttribute.cs
├── SingletonAttribute.cs
├── TransientAttribute.cs
├── Check.cs
├── Encrypt
├── DesEncrypt.cs
├── MD5Encrypt.cs
├── Enums
├── FileAccessMode.cs
├── HttpMethod.cs
├── Sex.cs
├── Whether.cs
├── Extensions
├── ArrayExtensions.cs
├── CommonExtensions.cs
├── ConfigurationExtensions.cs
├── DateTimeExtensions.cs
├── EnumExtensions.cs
├── EnumerableExtensions.cs
├── GuidExtensions.cs
├── ServiceProviderExtensions.cs
├── StringExtensions.cs
├── TypeExtensions.cs
├── Files
├── FileInfo.cs
├── FileSize.cs
├── FileSizeUnit.cs
├── Helpers
├── AssemblyHelper.cs
├── ConfigurationHelper.cs
├── DateTimeHelper.cs
├── DrawingHelper.cs
├── EmailSendHelper.cs
├── GuidHelper.cs
├── StringHelper.cs
├── Interfaces
├── IAppShutdownHandler.cs
├── Models
├── AreaSelectModel.cs
├── ColumnModel.cs
├── CoordinateModel.cs
├── SortOptionModel.cs
├── SortUpdateModel.cs
├── Result
├── ChartDataResultModel.cs
├── ExcelExportResultModel.cs
├── FileDownloadModel.cs
├── IResultModel.cs
├── OptionResultModel.cs
├── QueryResultModel.cs
├── ResultModel.cs
├── TreeResultModel.cs
├── ServiceCollectionExtensions.cs
├── Utils.Core.csproj
├── Validations
├── NotEmptyAttribute.cs
├── Utils.Mvc
├── Extensions
├── HttpContextAccessorExtensions.cs
├── HttpRequestExtensions.cs
├── Helpers
├── FileUploadHelper.cs
├── IpHelper.cs
├── MvcHelper.cs
├── Utils.Mvc.csproj
├── Validation
├── Directory.Build.props
├── Validation.Abstractions
├── IValidateResultFormatHandler.cs
├── ValidateResultFormatAttribute.cs
├── Validation.Abstractions.csproj
├── Validation.FluentValidation
├── FluentValidationExtensions.cs
├── ServiceCollectionExtensions.cs
├── ValidateResultFormatHandler.cs
├── Validation.FluentValidation.csproj
├── Validators
├── IPValidator.cs
├── PhoneValidator.cs
├── UrlValidator.cs
├── test
├── Cache
├── Cache.Redis.Tests
├── Cache.Redis.Tests.csproj
├── RedisHelperTest.cs
├── Data
├── Data.Common
├── BlogDbContext.cs
├── Data.Common.csproj
├── Domain
├── ArticleEntity.cs
├── CategoryEntity.cs
├── LoginInfo.cs
├── Repository
├── ArticleRepository.cs
├── CategoryRepository.cs
├── IArticleRepository.cs
├── ICategoryRepository.cs
├── Data.MySql.Tests
├── Data.MySql.Tests.csproj
├── DbContextTests.cs
├── DbSetTests.cs
├── RepositoryTests.cs
├── config
├── db.json
├── Data.PostgreSQL.Tests
├── Data.PostgreSQL.Tests.csproj
├── DbContextTests.cs
├── DbSetTests.cs
├── RepositoryTests.cs
├── config
├── db.json
├── Data.SQLite.Tests
├── Data.SQLite.Tests.csproj
├── DbContextTests.cs
├── DbSetTests.cs
├── RepositoryTests.cs
├── config
├── db.json
├── Data.SqlServer.Tests
├── Data.SqlServer.Tests.csproj
├── DbContextTests.cs
├── DbSetTests.cs
├── RepositoryTests.cs
├── config
├── db.json
├── Host
├── Host.Generic.Tests
├── Host.Generic.Tests.csproj
├── Program.cs
├── Properties
├── launchSettings.json
├── Startup.cs
├── config
├── cache.Development.json
├── cache.json
├── logging.Development.json
├── logging.json
├── Pdf
├── Pdf.iText.Tests
├── Pdf.iText.Tests.csproj
├── PdfHandlerTest.cs
├── pdfs
├── pH水质自动分析仪技术要求.pdf
├── 再生铜、铝、铅、锌工业污染物排放标准.pdf
├── Utils
├── Utils.Core.Tests
├── BaseTest.cs
├── Log
├── ILog.cs
├── TextLog.cs
├── ServiceCollectionExtensionsTest.cs
├── Utils.Core.Tests.csproj