netnrf 响应式框架

用于快速开发的响应式框架

演示:https://rf2.netnr.com

v3.x

  • 前端采用 jQuery + Bootstrap + EasyUI + AceAdmin + fontAwesome
  • 后端采用 .NET Core + EF + SQL(SQLServer、MySQL、PostgreSQL、SQLite)
    • 数据库脚本放置于 wwwroot/scripts/目录下
    • 数据库转换使用的工具:http://www.szmesoft.com/DB2DB
    • 全部采用 LINQ,跨数据库、避免SQL注入
  • Visual Studio 2019 运行项目

项目结构

  • Netnr.Core 类库(引用NuGet,源码地址:https://github.com/netnr/Netnr.ClassLibrary
  • Netnr.Data 数据访问、仓储(Scaffold-DbContext 命令自动生成)
  • Netnr.Domain 实体(Scaffold-DbContext 命令自动生成)
  • Netnr.Fast 常用方法
  • Netnr.Func 应用
  • Netnr.ResponseFramework Web站点

数据表

  • 用户(SysUser)
  • 角色、角色权限(SysRole)
  • 菜单(SysMenu)
  • 按钮(SysButton)
  • 日志(SysLog)
  • 字典(SysDictionary)
  • 表配置(SysTableConfig)

功能

  • 登录:系统账号登录
  • 权限:角色权限,控制菜单及页面按钮
  • 表格:动态配置标题、宽度、排序、对齐方式、格式化、冻结、点击排序等
  • 表单:动态生成表单,自定义标题、排序、跨列、类型、必填等,支持多表单生成
  • 查询:动态生成查询面板,自定义字段查询,以JSON格式表达查询条件
  • 日志:访问日志记录
  • 字典:通用的字典表
  • 工具:数据库表信息展示,一键导出数据库表结构为Excel
  • 任务:定时执行任务,清理临时目录、重置演示数据库
  • 导出:公共导出Excel表,自定义查询主体,支持条件查询、列格式化,支持追加操作等
  • 上传:通用的上传接口
  • 接口:所有非页面请求规范化为接口,并用 swagger 生成可视化接口文档,https://rf2.netnr.com/swagger

使用说明

  1. 创建表、写字段注释(方便生成表配置)
  2. 生成表配置,可以用【工具箱】-【表管理】-【生成表配置】,也可以直接拷贝文件夹wwwroot/scripts/table-config/对应的SQL脚本运行
  3. 修改表配置,表格,表单、查询,调整为需要展示的形式(标题、宽度、排序、输入类型、列格式化、必填、默认值等,根据业务拓展配置项)
  4. 修改表配置,输入类型配置,需要配置下拉框、下拉树等,在Common控制器写方法,url源指向这个方法访问的地址
  5. 修改表配置,列格式化配置,比如状态需要格式化为启用停用,有常用公共的格式化方法,也可以配置自定义格式化方法col_custom_字段小写
  6. 创建一个页面,菜单表添加此页面,配置操作按钮
  7. 写表对应的查询、保存(新增/修改)、删除方法,参考【系统设置】里面的功能
  8. 基于z.js封装的表格方法(API与EasyUI保持一致,看EasyUI文档即可),配置查询表的请求地址、表格类型、分页、复选等

截图

列表

新增、编辑、查看

列表配置

表单配置

角色权限配置(树)

第三方文档API

Source

.NET Core的响应式框架,基于Ace Admin框架菜单导航,Bootstrap布局,fontAwesome图标,内嵌Iframe用EasyUI做数据绑定,动态配置列表,动态配置表单的更多相关文章

  1. 并发编程概述 委托(delegate) 事件(event) .net core 2.0 event bus 一个简单的基于内存事件总线实现 .net core 基于NPOI 的excel导出类,支持自定义导出哪些字段 基于Ace Admin 的菜单栏实现 第五节:SignalR大杂烩(与MVC融合、全局的几个配置、跨域的应用、C/S程序充当Client和Server)

    并发编程概述   前言 说实话,在我软件开发的头两年几乎不考虑并发编程,请求与响应把业务逻辑尽快完成一个星期的任务能两天完成绝不拖三天(剩下时间各种浪),根本不会考虑性能问题(能接受范围内).但随着工 ...

  2. 函数响应式编程(FRP)框架--ReactiveCocoa

    由于工作原因,有段时间没更新博客了,甚是抱歉,只是,从今天開始我又活跃起来了,哈哈,于是决定每周更新一博.大家互相学习.交流. 今天呢.讨论一下关于ReactiveCocoa,这个採用函数响应式编程( ...

  3. 基于Ace Admin 的菜单栏实现

    1.首先是数据库表必然包含以下几个字段Id ,ParnetId,Url,Name等 create table dbo.Module ( Id uniqueidentifier not null con ...

  4. ace admin 左侧菜单定位

    后台模版来自:Ace Admin http://ace.jeka.by/form-elements.html 左侧菜单,通过js根据url来判断显示哪块 window.location.pathnam ...

  5. 美团客户端响应式框架EasyReact开源啦

    前言 EasyReact 是一款基于响应式编程范式的客户端开发框架,开发者可以使用此框架轻松地解决客户端的异步问题. 目前 EasyReact 已在美团和大众点评客户端的部分业务中进行了实践,并且持续 ...

  6. 巧用 BootStrap --- 栅格系统(布局)轻松搞定网页响应式布局!

    摘要:Bootstrap 为我们提供了一套响应式.移动设备优先的流式栅格系统,合理的使用栅格系统将会使得网站页面布局变得更加简单,在设置了媒体查询之后,响应式网站也无需再单独写了.接下来我以Boots ...

  7. 07-Spring5 WebFlux响应式编程

    SpringWebFlux介绍 简介 SpringWebFlux是Spring5添加的新模块,用于Web开发,功能和SpringMvc类似的,WebFlux使用当前一种比较流行的响应式编程框架 使用传 ...

  8. SpringBoot实战派读书笔记---响应式编程

    1.什么是WebFlux? WebFlux不需要Servlet API,在完全异步且无阻塞,并通过Reactor项目实现了Reactor Streams规范. WebFlux可以在资源有限的情况下提高 ...

  9. Crumpet – 使用很简单的响应式前端开发框架

    Crumpet 是一个简单的响应式的基于 SASS/SCSS 的响应式前端框架,保持你的 HTML 代码简洁.内置尽量使用占位符选择器,以减少你的 HTML 标记的大小,没有凌乱的 HTML 代码.快 ...

随机推荐

  1. nyoj 65-另一种阶乘问题 (Java 高精度)

    65-另一种阶乘问题 内存限制:64MB 时间限制:3000ms 特判: No 通过数:16 提交数:18 难度:1 题目描述: 大家都知道阶乘这个概念,举个简单的例子:5!=1*2*3*4*5.现在 ...

  2. Python之selenium自动化PART1

    本文适合有经验的测试童鞋 一.Selenium自动化测试环境搭建 1.cmd --- pip install selenium==2.53.0 (如果selenium后面不跟==,表示默认安装最新版本 ...

  3. 某些机root也不能访问dma-buf

    从4.3后,回顾<从surfaceflinger历史变更谈截屏>,只能通过生产消费者队列向surfaceflinger服务申请显示缓冲,这个缓冲就是dma-buf映射的共享内存. bind ...

  4. flex一些属性

    // 改变主轴的方向 flex-direction: column; // display:flex的子元素无法设置宽度 // 子元素有个flex-shrink属性,表示在父元素宽度不够的情况下是否自 ...

  5. Jmeter---第一天配置中文环境、安装jmeter插件

    一:安装就不在赘述,百度有很多优秀的文章.接下来开始我自己的学习笔记 二:设置JMETER,切换中文环境. 首先打开jmeter的安装目录,找到bin文件目录中的jmeter.propertie 打开 ...

  6. Vue 幸运大转盘

    转盘抽奖主要有两种,指针转动和转盘转动,个人觉得转盘转动比较好看点,指针转动看着头晕,转盘转动时指针是在转盘的中间位置,这里要用到css的transform属性和transition属性,这两个因为不 ...

  7. Python 并发总结,多线程,多进程,异步IO

    1 测量函数运行时间 import time def profile(func): def wrapper(*args, **kwargs): import time start = time.tim ...

  8. Python3 之 类属性与实例属性

    1.类属性与实例属性 类属性就相当与全局变量,实例对象共有的属性,实例对象的属性为实例对象自己私有. 类属性就是类对象(Tool)所拥有的属性,它被所有类对象的实例对象(实例方法)所共有,在内存中只存 ...

  9. jenkins System error

    背景 在使用WAR包安装jenkins后,启动tomcat,显示启动成功,但最后提示信息如下: 04-Dec-2018 03:28:21.563 WARNING [Computer.threadPoo ...

  10. unicode和utf-8编码区别

    以前使用Python2,一直为中文烦恼,也不知道为什么开头就要声明#coding=utf-8,后来用了Python3,发现就不用这样了,还是想彻底弄懂下这是为什么. 先讲asc码  每个 ASC码占一 ...