软件介绍:

Magic是一个CRUD后端生成器,内置于ASP.NET内核中。它的目的是让你“神奇地”做一些无聊的事情,通过使用自动化技术,创建80%的CRUD端点,自动包装MySQL或MS SQL Server数据库,同时你可以专注于有趣的事情。

一、参考文档

1、适合 ASP.NET Core 的超级-DRY开发

2、Magic 官网:https://polterguy.github.io/getting-started/

二、实现步骤:

Getting started

To get started with Magic you’ll need the following installed.

  1. MySQL or Microsoft SQL Server.

  2. Visual Studio Code, or Visual Studio if you’re on Windows

  3. NodeJS - To serve the frontend/dashboard

  4. Angular, which is installed using npm install -g @angular/cli after installing NodeJS

  5. DotNet CLI - Unless you’re using Visual Studio on Windows

List of what to do

  1. Open Visual Studio Code in your magic folder

  2. Edit your appsettings.json file, and modify your MySQL and/or MSSQL connection strings

  3. Open one terminal window and go to magic.backend

  4. Run dotnet run in the magic.backend terminal

  5. Open another terminal window and go to frontend

  6. Run npm install in this terminal

  7. When npm install from above is done, run ng serve in the frontend terminal

  8. Open your browser and point it to http://localhost:4200

Creating your first CRUD Web API

  1. Login with “root/root” as your username/password

  2. Click the “Crudify” menu item

  3. Choose your database and your table

  4. Click the “Crudify” button

When you have created your first CRUD endpoints, you can click the “Endpoints” menu item, and try out your newly created HTTP REST endpoints.

如果你在一家咨询公司工作,可能每年都会启动几个具有类似需求类型的新项目,其中需要解决每个新项目的共性。了解了客户端需求和一些初始实现之后,便可以使用超级 DRY 方法在几秒钟内完成整个项目。当然,通过标识常见模块(如身份验证和授权),可以进一步重用项目中的元素组合。通过在常见 Web API 项目中实现这些模块,可以将它们应用到任何新项目中,这些新项目会带来与你以前看到过的类似的问题。

为了方便记录,此操作听起来很简单,但事实上避免重复很难。它需要反复重构的意愿。完成重构时,还需要进一步进行重构。但好处是不容忽视的。DRY 原则可以让你近乎魔术般地创建代码,只需挥动基架魔杖,并借用现有部件组合模块。

最后,这里阐述的原则可以帮助你利用现有最佳做法创建自己的 Web API,同时避免重复。这种方法可以带来很多好处,希望它可以帮助你领会到 DRY 的美妙之处。

尽管出于学术原因,Magic的大部分源代码都是公开的,但它并不是开源的或免费的软件,我们会对您要运行Magic的每个服务器/主机名/DNS记录收取费用。不过,在本地开发机器上评估和使用Magic是免费的。如果您想使用Magic创建免费的开源软件,我们还可以给您一个免费的许可证密钥。请在此处或随附的许可证文件中阅读更多信息。

【Netcore】使用 Magic生成器 ,零代码实现CRUD - HTTP REST 之接口的更多相关文章

  1. crudapi零代码开发平台应用场景和成功案例

    应用场景 在前面文章中,已经介绍了crudapi主要功能和使用方式,本文主要介绍crudapi应用场景以及具体的使用方式. 概要 crudapi属于产品级的零代码平台,无需编程,通过配置自动生成cru ...

  2. MySql数据库列表数据分页查询、全文检索API零代码实现

    数据条件查询和分页 前面文档主要介绍了元数据配置,包括表单定义和表关系管理,以及表单数据的录入,本文主要介绍数据查询和分页在crudapi中的实现. 概要 数据查询API 数据查询主要是指按照输入条件 ...

  3. 订单和产品的多对多表关系在crudapi系统零代码实现

    表关系管理 在上一篇序列号管理中,产品和销售订单都是孤立的单表,本文通过crudapi中表关系(relation)管理将多个表连接起来,形成一个整体. 概要 关系类型 表与表之间的关系(relatio ...

  4. 通过序列号Sequence零代码实现订单流水号

    序列号管理 本文通过产品编码和订单流水号介绍一下序列号(Sequence)在crudapi中的应用. 概要 序列号 MySQL数据库没有单独的Sequence,只支持自增长(increment)主键, ...

  5. 零代码第一步,做个添加数据的服务先。node.js + mysql

    node.js + mysql 实现数据添加的功能.万事基于服务! 增删改查之添加数据. 优点:只需要设置一个json文件,就可以实现基本的添加功能,可以视为是零代码. 添加数据的服务实现的功能: 1 ...

  6. "零代码”开发B/S企业管理软件之一 :怎么创建数据库表

    声明:该软件为本人原创作品,多年来一直在使用该软件做项目,软件本身也一直在改善,在增加新的功能.但一个人总是会有很多考虑不周全的地方,希望能找到做同类软件的同行一起探讨. 本人文笔不行,能把意思表达清 ...

  7. Excel催化剂开源第42波-与金融大数据TuShare对接实现零门槛零代码获取数据

    在金融大数据功能中,使用了TuShare的数据接口,其所有接口都采用WebAPI的方式提供,本来还在纠结着应该搬那些数据接口给用户使用,后来发现,所有数据接口都有其通用性,结合Excel灵活友好的输入 ...

  8. 个人永久性免费-Excel催化剂功能第98波-零代码零距离轻松接触并拥有金融大数据

    数据产生价值的一个最突出的领域-金融领域,股票.证券.上市公司财务报表等,多少人在其中发掘出宝贵的数据价值.今天Excel催化剂联合Tushare金融大数据平台,让这一切的数据都能成为你我普通人零代码 ...

  9. Spring Cloud Alibaba迁移指南(二):零代码替换 Eureka

    自 Spring Cloud 官方宣布 Spring Cloud Netflix 进入维护状态后,我们开始制作<Spring Cloud Alibaba迁移指南>系列文章,向开发者提供更多 ...

随机推荐

  1. css+js实现自动伸缩导航栏

    用css+js实现自动伸缩导航栏 需要达到的效果: 默认首页选中样式 设置鼠标滑过效果:颜色变化(#f60),宽度变化,字体变化 所涉及的知识点: 布局:float css: 元素状态切换(displ ...

  2. Qt for Android修改应用程序的图标和名称

    使用QT开发出的Android Apk安装后默认的图标是安卓的小机器人,下面介绍在QT5.12版本上修改APP名称和图标的方法. 1.  编译一次项目后,在编译目录下找到AndroidManifest ...

  3. [转]localhost、127.0.0.1和0.0.0.0和本机IP的区别

    一.IP地址是什么 首先,我们要知道网络中的相互访问其实就是在进行两者间的数据传递.就如同送快递一样,快递发出只有知道你的住址信息,才能将快递送到你的手中.而在网络访问时,只有知道你在网络中的地址信息 ...

  4. i春秋——“百度杯”CTF比赛 十月场——Vld(Vulcan Logic Dumper 、php opcode、sql 报错注入)

    打开题目看到提示 "do you know Vulcan Logic Dumper?" ,再查看源码看到"<!-- index.php.txt ?>" ...

  5. RC4弱密码套件检测

    一.漏洞分析 事件起因 2015年3月26日,国外数据安全公司Imperva的研究员Itsik Mantin在BLACK HAT ASIA 2015发表论文<Attacking SSL when ...

  6. mysql 常用 sql 语句 - 快速查询

    Mysql 常用 sql 语句 - 快速查询 1.mysql 基础 1.1 mysql 交互         1.1.1 mysql 连接             mysql.exe -hPup    ...

  7. 并发编程(六)--进程/线程池、协程、gevent第三方库

    一.进程/线程池 1.进程池 (1)什么是进程池 如果需要创建的子进程数量不大,可以直接利用multiprocess中的Process来创建.但是当需要创建上百个或上千个,手动创建就较为繁琐,这时就可 ...

  8. 利用mycat读写分离搭建wordpress博客网站

    实验环境 以下配置都是建立在mariadb主从没有问题的情况下: .三台主机:在三台机器/etc/hosts添加以下3条主机信息(mycat和wordpress在一台机器上面) mycat:192.1 ...

  9. Python3+HTMLTestRunner+SMTP生成测试报告后发送邮件

    在前一篇https://www.cnblogs.com/zhengyihan1216/p/11549820.html 中记录了如何生成html格式的报告, 这篇记录下怎么将测试报告通过邮件发出 1.对 ...

  10. 工作必备之正则匹配、grep、sed、awk

    常用正则:匹配空行:^\s*\n 匹配www开头:^www 添加行号:awk '$0=""NR". "$0' /etc/yum.conf 1.所有域名前加www ...