BCVP开发者说第一期:Destiny.Core.Flow

沉静岁月,淡忘流年

1

项目简介

Destiny.Core.Flow


Destiny.Core.Flow是基于.NetCore平台,轻量级的模块化开发框架,Admin管理应用框架,旨在提升团队的快速开发输出能力,由常用公共操作类(工具类、帮助类)、分层架构基类,第三方组件封装等组成。

Destiny.Core.Flow重写微软的identity用户角色和重写IdentityServer4的实体,以及IdentityServer的ClientAPisource等查询仓库实现,将IdentityServer4和Identity以及其他模块合并成为一个上下文,在使用IdentityServer4时不需要在维护几个上下文,统一了上下文管理。

框架lambda查询不需要在后台写各种判断,所有的查询条件通过前端传入,从而减少后台的一些字符段判断等,使用动态拼接lambda。

原项目地址:
https://github.com/DestinyCore/Destiny.Core.Flow

作者博客:
https://www.cnblogs.com/pual13/

 

2

框架功能

 

在线项目演示:

https://admin.destinycore.club

在线展示(这版本目前没法使用(后面再维护),VUE版本正在开发)

账号:Test002
密码:123456

后面支持VUE版本

在线后端API:

https://api.destinycore.club

该项目是基础版不提供工作流版本
系统设置

  1、用户管理
  2、角色管理
  3、菜单管理
  4、功能管理
  5、数据字典
  6、组织架构
  7、操作审计
  8、数据审计
  9、工作流(暂时不支持)

3

框架技术栈


数据库

    MySql
    Redis
    MongoDB

.Net Core技术
    MSDI (个人扩展批量注入)
    Consul服务注册发现
    基于MediatR实现事件总线
    AutoMapper对象映射
    在仓储层实现了自动转实体层不需要手动注入实现转化
    SignalR即时通信(暂时不支持)
    EntityFrameworkCore ORM框架
    MongoDB
    Redis

4

分层介绍

    框架分层

  • Infrastructure 基础建设层

    • Destiny.Core.Flow

      用来替换之前的Common层,实现注解式模块化挂载、事件总线、自动DI注册、通用查询模型、lambda表达式动态生成、仓储接口定义、权限接口定义、自定义扩展方法等。

    • Destiny.Core.Flow.EntityFrameworkCore

      EFCore上下文定义、扩展EF映射数据库配置接口以及类、在SaveChanges实现发送日志事件进行记录数据操作日志、仓储接口实现、EFCore模块抽象类定义。

    • Destiny.Core.Flow.Identitys

      重写微软Identity自带用户角色的代码。

    • Destiny.Core.Flow.IdentityServer

      重写IdentityServer相关接口,及相关映射,实现通过仓储操作相关数据

    • Destiny.Core.Flow.IdentityServer.Entities

      IdentityServer相关实体

    • Destiny.Core.Flow.AspNetCore

      NetCoreAPI通用层,权限过滤器,日志过滤器、异常中间件、控制器返回同意格式模型。

    • Destiny.Core.Flow.CodeGenerator 代码生成器

      已实现,可以生成实体、DTO、接口、控制器。

    • to do…

  • Business 业务层

    • Destiny.Core.Flow.Dtos

      前端与后端交互Dto模型定义。

    • Destiny.Core.Flow.IServices

      业务接口定义。

    • Destiny.Core.Flow.Services

      业务接口实现。

    • Destiny.Core.Flow.Model

      数据库实体模型定义

    • Destiny.Core.Flow.API

      API接口定义。

    • Destiny.Core.Flow.AuthenticationCenter

      IdentityServer授权中心

    • to do…

  • Moduls 模块层

    • Destiny.Core.Flow.Aop 模块

      使用AspectCore来实现AOP动态代理。

    • Destiny.Core.Flow.AutoMapper 模块

    • Destiny.Core.Flow.Caching 缓存接口定义模块

    • Destiny.Core.Flow.Caching.CSRedis 基于CSRedis实现缓存功能模块

    • Destiny.Core.Flow.Consul 服务发现模块

    • Destiny.Core.Flow.SwaggerUI 模块

    • Destiny.Core.Flow.MongoDB 模块

      集成MongoDB分页查询,添加,更新,删除。实现MongoDB单独仓储


基于Net/Core,快速搭建 API & SPA 及微服务应用组织

BASE NETCORE (VUE) PROJECT TEAM

每一个.NET开发者都可以通过自己的开源项目(最好可以配套简单发表些文章)在这里进行分享,BCVP开发者组织的意义就是激发和挖掘更多的作品,可能偏基础,但是都会有价值。目的就是希望:每个人能将从社区学到的知识,进行自己消化和总结,浓缩成一个个独立的项目,接着投入到社区,最后让更多的初学者去了解、去学习、去思想碰撞,从而达到学习来源于社区,最后反哺于社区的良好循环目的,我们都是学生,也都是下一批初学者的老师,这才应该是一个社区正向推动的方法。

地址:
https://github.com/BaseCoreVueProject

可以在Home仓库里,查看具体的流程说明,只要你愿意分享,就来吧。

加入我们

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/306990.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

.NET Core 取消令牌:CancellationToken

在 .NET 开发中,CancellationToken(取消令牌)是一项比较重要的功能,掌握并合理的使用 CancellationToken 可以提升服务的性能。特别在异步编程中,我常常会以创建 Task 的方式利用多线程执行一些耗时或非核心业务逻辑&a…

java char short区别_java 彻底理解 byte char short int float long double

遇到过很多关于 数值类型范围的问题了,在这做一个总结,我们可以从多方面理解不同数值类型的所能表示的数值范围在这里我们只谈论 java中的数值类型首先说byte:这段是摘自jdk中 Byte.java中的源代码从这里可以看出 byte的取值范围:…

程序员过关斩将--从未停止过的系统架构设计步伐

“首先,这篇文章肯定会得罪一些人“其次,此文只代表我个人的意见,仅供参考从分层说起谈到系统架构的分层和系统领域边界的划分,每个架构师,每个技术经理,甚至每个程序员都有自己的一套想法。无论是怎么样的…

java流上传文档把磁盘撑满_BOOT目录磁盘占用满处理

背景:Ubuntu:16.04查看已安装启动镜像dpkg --get-selections |grep linux-image这里会列出目前已经安装的启动镜像,一般分两种,一种状态为“install”,一种为“deinstall”对于"deinstall"的镜像,一般为镜像…

C# 9.0 正式发布了(C# 9.0 on the record)

翻译自 Mads Torgersen 2020年11月10日的博文《C# 9.0 on the record》 [1],Mads Torgersen 是微软 C# 语言的首席设计师,也是微软 .NET 团队的项目群经理。C# 9.0 正式发布正式宣布:C# 9.0 发布了!早在5月,我就写了一…

磁带最优存储问题java实现_磁带的最优存储问题(贪心选择)

算法设计n个程序的平均读取时间:(贪心策略)在该题目中,要考虑综合因素:长度和读取概率。要求n个程序的平均读取时间最短。按照贪心策略,则每个程序的读取时间都应该最短。故:(1)计算每个程序的长度和读取概率的乘积。(…

BCVP第2期:项目已完成升级.NET5.0

(是时候拿出来这种图了)1开心的锣鼓想必这两天最热闹的几个词语,就是c#9.0、.net5.0还有conf大会了吧,当然还有大一统。其实,早在2019年年中,就已经引入了.NET5.0了,然后从2020-03-16开始,就一直在说.NET5.…

java 1..0 openjdk_java-1.7.0-openjdk-i386和java-7-openjdk-i386有什么区别

两个OpenJDK是一样的.但是OpenJDK与Oracle JDK略有不同.阅读this post了解更多信息.您为OpenJDK获取两个选项的原因是PROBABLY,您有两个安装的OpenJDK副本(或两个不同的引用到系统上的同一目录).为了进一步调查,请尝试使用ls -lh /usr/lib / jvm. /usr/lib / jvm通常是Java安装…

linux java升级版本_为嵌入式Linux设备实现更新/升级系统

我有一个在嵌入式Linux设备上运行的应用程序,并且偶尔会对软件进行更改,有时也会对根文件系统甚至已安装的内核进行更改 .在当前的更新系统中,只删除旧应用程序目录的内容,并在其上复制新文件 . 当对根文件系统进行更改时&#xf…

如何在ASP.NetCore增加文件上传大小

关注架构师高级俱乐部开启架构之路不定期福利发放哦~架构师高级俱乐部读完需要7分钟速读仅需 3 分钟/ 如何在核心中增加文件 ASP.NET 大小 /从ASP.NET 2.0开始最大请求正文大小限制为30MB (28.6 MiB)。在正常情况下,无需增加 HTTP 请求 body …

java完全二叉树最小堆_Java实现最小堆一

Java实现最小堆一堆是一种经过排序的完全二叉树,其中任一非终端节点的数据值均不大于(或不小于)其左孩子和右孩子节点的值。最大堆和最小堆是二叉堆的两种形式。最大堆:根结点的键值是所有堆结点键值中最大者。最小堆:根结点的键值是所有堆结…

一个 Task 不够,又来一个 ValueTask ,真的学懵了!

一:背景 1. 讲故事前几天在项目中用 MemoryStream 的时候意外发现 ReadAsync 方法多了一个返回 ValueTask 的重载,真是日了狗了,一个 Task 已经够学了,又来一个 ValueTask,晕,方法签名如下:publ…

java class类型参数_使用Class对象实例化Java类型参数/ generic

如何实例化Java泛型对象,该对象仅接受类或参数给出的类型参数宾语?例如:通常,可以使用以下语法实例化Integer对象的ArrayList:ArrayList foo new ArrayList();但是,给定一个Class诸如Integer.class之类的对象,怎么能创建一个类似的ArrayList…

Magicodes.IE 3.0重磅设计畅谈

Magicodes.IE 3.0重磅设计畅谈总体设计图Magicodes.IE导入导出通用库,支持Dto导入导出、模板导出、花式导出以及动态导出,支持Excel、Csv、Word、Pdf和Html。IE在去年年底重构一次之后,经过这么长时间的迭代,又迎来了瓶颈。根据本…

php引用类,thinkphp引用类的使用

比如发送邮件类phpmailer1.将核心文件放入ORG目录下2.在使用的地方,引入这个类文件如何引入呢?import(.ORG.phpmailer);这个表示引入当前项目中的ORG中的phpmailer.class.php文件3.引入之后就可以使用文件中的类了public function sendEmail() {import(.…

Net5 已经来临,让我来送你一个成功

没错,那就是“下载成功”。现在,已经可以急速下载.Net5 docker 镜像 .Net 5 进行今天已经正式发布,想必各位已经通过各种渠道了解到了此次发布的所有内容。并且也都体会到了这次凑成三连的金 scott 是什么效果(啊哈,三…

list申请java,java把一个list中的内容添加到另一个list中 FPGA编程问题:有多个.v文件与module,把他们加到......

导航:网站首页 >java把一个list中的内容添加到另一个list中 FPGA编程问题:有多个.v文件与module,把他们加到...java把一个list中的内容添加到另一个list中 FPGA编程问题:有多个.v文件与module,把他们加到...相关问题…

推荐几款强大流行的BI系统

高级架构师俱乐部 读完需要2分钟速读仅需 1 分钟企业在日常运营过程中,需要根据公司实时经营数据来做未来决测或者发现经营中的问题,在此过程中离不开对数据的分析,而平常利用 excel 等方式极大的提高了领导层快速做出决测的成本&#xff0c…

php 4位数字不足补零,php实现数字不足补0的方法

php实现数字不足补0的方法发布时间:2020-08-28 09:51:06来源:亿速云阅读:100作者:小新这篇文章将为大家详细讲解有关php实现数字不足补0的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大…

聊聊单元测试

大家好,我是Z哥。提起单元测试,很多人对它的态度是,我知道它有用,但是我不想写。大多数人的理由是没时间写,任务太多。但是说实话,是真的没时间吗?Z哥认为真是由于没时间而不写单元测试的人绝对…