You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
赵鹏 eba00bc74e 错误 9 months ago
DependencyInjectionTest ybtest 转移到 SuperApi 9 months ago
NugetTest ybtest 转移到 SuperApi 9 months ago
READMEIMG init 10 months ago
ReZero 错误 9 months ago
SuperAPI 修改跳过 9 months ago
TextTemplateTest init 10 months ago
YbTest ybtest 转移到 SuperApi 9 months ago
medical.jzyb.entity 工厂方法 动态转换 9 months ago
medical.transfomer.business 对象转换 9 months ago
medical.transfomer.dal 项目优化 9 months ago
medical.transfomer.dto 项目优化 9 months ago
medical.transfomer.service 对象转换 9 months ago
.dockerignore init 10 months ago
.editorconfig init 10 months ago
.gitattributes init 10 months ago
.gitignore init 10 months ago
Dockerfile init 10 months ago
LICENSE init 10 months ago
README.Docker.md init 10 months ago
README.md init 10 months ago
ReZero.sln 工厂方法 动态转换 9 months ago
compose.yaml init 10 months ago

README.md

Rezero API 功能

Rezero是一款.NET中间件,无需写代码也能实现CRUD,无破坏性,可以集成到任何.NET API项目,非.NET用户可以用发布好的exe文件

1、界面功能:创建接口 、建库、建表 、生成接口、设置授权、接口文档、调试接口等等都不需要写代码
2、可以创建自已的用户表,而不是固定的表实现授权
3、支持非.NET用户使用,比如你是前端 GO JAVA PHP也可以使用打包好的EXE 4、.NET6+的API项目都可以一行代码集成到自已项目中,对以前的逻辑没有破坏性
5、.NET用户也可以用来构建API程序,支持模块化、授权、IOC(支持属性注入)、自动生成接口、ORM、工作单元、多租户等等

1.1 官方文档

https://www.donet5.com/Doc/32/2580

1.2 加群交流

qq群号:472534707

1.3 功能截图

创建接口

输入图片说明

查看创建后的接口

输入图片说明

在线调试接口

输入图片说明

二、数据库支持

Sqlite 、 MySql 、 SqlServer 、 PgSQL 、Oracle 、人大金仓(默认模式)、 达梦

三、非.NET用户教程

通过下载EXE运行 https://gitee.com/DotNetNext/ReZero/releases

四、.NET用户教程

4.1 Nuget安装

Rezero.Api 

4.2 一行代码配置

新建一个.NET6+ WEB API 只需要注入一行代码就能使用 Rezero API

/***对现有代码没有任何影响***/

//注册:注册超级API服务
builder.Services.AddReZeroServices(api =>
{
    //启用超级API
    api.EnableSuperApi();//默认载体为sqlite ,有重载可以配置数据库

});
//写在builder.Build前面就行只需要一行
var app = builder.Build();

4.3使用ReZero

启动项目直接访问地址就行了 http://localhost:5267/rezero 输入图片说明

4.4 授权

打开appsettings.json配置jwt参数 输入图片说明 界面完成登录 输入图片说明

4.5 集成到自已系统

只要在url加上model=small 就会隐藏头部菜单和左边的菜单
如果跨域或者端口需要url加token这样可以让内部接口也支持jwt授权 输入图片说明

效果图如下 输入图片说明

4.6统一返回结果

如果不喜欢默认返回格式我们可以自定义返回格式

//注册ReZero.Api
builder.Services.AddReZeroServices(api =>
{
  
    //有重载可换json文件 (断点看一下apiObj.DatabaseOptions.ConnectionConfig有没有字符串进来)
    var apiObj = SuperAPIOptions.GetOptions("rezero.json"); 
      
    .....省略........
     
    //只看这一行 (不要new InterfaceOptions会把上面配置清空,尽量用apiObj.InterfaceOptions.xxx)
    apiObj.InterfaceOptions.MergeDataToStandardDtoFunc=dto =>
    {
 
                if (dto is ErrorResponse error)
                {
                    return new { isSuccess = false, data = error.message };
                }
                else if (dto is bool b)
                {
                    return new { isSuccess = b, data = b };
                }
                //更多逻辑自已处理这儿只是一个示例
                return new { isSuccess = true, data = dto };
      };
      
  
    //启用超级API
    api.EnableSuperApi(apiObj);
  
});

4.7 AOP实现日志记录 或者 授权(不用自带的JWT)

//注册ReZero.Api
builder.Services.AddReZeroServices(api =>
{
    //有重载可换json文件
    var apiObj = SuperAPIOptions.GetOptions();
    //IOC业务等所有需要的所有集程集
    apiObj!.DependencyInjectionOptions = new DependencyInjectionOptions(assemblyList);
    apiObj.InterfaceOptions.SuperApiAop = new MyAop();//这一行配置AOP
   //启用超级API
   api.EnableSuperApi(apiObj); 

}); 

//自定义一个AOP类
public class MyAop : DefaultSuperApiAop
{
    public override Task OnExecutingAsync(InterfaceContext context)
    {
        //也可以用AOP实现JWT授权,不用使自带的JWT授权,适用于已存在JWT的情况
        //JWT验证
        //context.AttachClaimToHttpContext("Claim", 1);
        return base.OnExecutingAsync(context);
    }
}

五、功能预览

预览1:查询配置显示列

输入图片说明

预览2:查询配置联表

输入图片说明

预览3:SQL直接生成接口

输入图片说明

预览4:配置完显的接口列表

输入图片说明

预览5: 创建实体

输入图片说明

预览6: 更新表结构对比

输入图片说明

六、打赏作者

首先感谢大家 , 项目启动前就有人赞助开发了

工作量很大 ,功能复杂 ,对标的是收费软件,相信未来将会成长的很好

坚持用开源做出高品质的免费软件

输入图片说明

七、详细文档

https://www.donet5.com/Doc/32/2580