三层我就不说了,主要是看框架思路可扩展。以前用FineUI开源版写过一版,修修改改自己用了,没有特意的整理,FineUIMVC开发还是比较快,移植了一下两天就弄完了,算是一个对新手有用的工具,先放出第一版发布版,没有源码但是有接口,也搭着好久没更新博客了(主要是MVC挺简单的没啥可写的...)所以在这详细说明下。

1.使用

加入了本地数据库,sqlite,主要记录下连接地址和接口地址,我本地Win10 64 环境 IIS发布后需要设置下32位兼容性:
启动后就可以连接数据库了,目前支持SqlServer 和MySQL,配置地址和密码,测试下会有连接成功提示,连不上的话,就不知了。
单击数据库名,可以加载数据库表,选择要生成的表,点击选择按钮移动到右边,左侧表有个搜索功能,两个表交互是纯前端的,有用到的可以查看下源码
 
选择表的主键,主键影响增删改,处理的是int型,框架会自增长,到框架时再说。
 
填写项目名称,框架默认了两个数据库帮助类,默认数据库访问类是项目只能有一个数据库类型的意思,生成模式传统和自定义,目前这个分类还没啥作用,就是自定义的时候除了主键都是string类型罢了(传统是按数据库类型),
这时点击生成就可以生成项目了,项目地址在发布文件夹下,项目文件,时间加项目名称文件夹

2.框架

生成的代码框架是三成的小架子,没有前台,当然可以自己见模板,一会再说。拷贝到项目中就能直接用,用起来还是很方便的
BP,文件夹,按表生成,一个表一个三层,MySql和SQLserver的路由在Base/BPBase.cs中,通过Config/DataConfig.ini配置,代码看一眼注释应该都能看懂,不行打个断点走一遍。

3.模板和接口

为了保证灵活开放了模板和接口。详细介绍
模板文件就在发布文件的mould中,后缀名.codemod的是模板文件,可以直接用记事本打开,修改其中$$***$$就是要替换的动态字符了,所以生成代码一点不神秘很偷懒,后续我会把程序默认的字典说明加上,其实看模板也能看懂,没啥神奇的,不喜欢模板可以随便改。

标识符 说明 对应属性/来源 备注
$$namespace$$ 项目名称/命名空间 ModelHelp.MsCodeSetup.namespacestr 前台填写
$$connectionString$$ 数据库连接地址 ModelHelp.MsCodeSetup.conStr 前台生成
$$DbHelperMySQL$$ MySQL帮助类 ModelHelp.MsCodeSetup.mysqlclassname 前台填写
$$DataAccessor$$ SQL Server帮助类 ModelHelp.MsCodeSetup.sqlclassname 前台填写
$$ColunName$$ Message字段(默认列名) MsTableColumns.ColunMs 数据库读取
$$ColunNotes$$ 列字段说明 MsTableColumns.ColunNotes 数据库读取
$$tablename$$ 表名 MsTableColumns.TableName 数据库读取
$$KEY$$ 主键字段 作为参数传入 MsTableColumns 数据库读取
$$KEYname$$ 主键字段列名 作为参数传入 MsTableColumns.ColunName 数据库读取
$$type$$ 字段类型 根据列字段类型动态生成 数据库读取
$$MsContent$$ 生成数据表实体时格式标记 见 MsTable.codemod 模板  
$$_ForMsToGetMs$$ 生成selectSQL语句时的特殊标记 见 SQLTable.codemod 模板  
$$_ForCmToAddMs$$ 生成insertSQL语句时的特殊标记 见 SQLTable.codemod 模板  
$$_ForMsToAddMs$$ 生成insertSQL语句时的特殊标记 见 SQLTable.codemod 模板  
$$_ForMsToUpMs$$ 生成updateSQL语句时的特殊标记 见 SQLTable.codemod 模板  
 
再动态的生成可以使用接口配置
比如我新建个类库,引用CodeFactoryMVC.Main.dll
 
Class1实现接口ICodeFactory,这样我就参与了生成过程,并继承所有配置参数,表名,数据库名,字段,字段备注...感动的我要掉眼泪了
生成该项目后,需要把dll放到模板生成的bin文件夹下,
在web上配置一下就可以用了,如果没效果的话,发给我、我调试...
 

下载地址

其他扩展

发布文件中还包括一个FineUIMVC的扩展,FineUIMVCEx.dll FineUIOvereide.js FineUIOvereide.css animate-3.5.2.min.css
前台的东西比较多,也藏不住,干脆就说明一下,如果觉得一些效果很合口味可以联系我 /阴险
 
另外这个项目还没做完,下载没有做,如果喜欢的话可以关注,发两个赞助二维码,也不知道会不会有人扫描(奈何我发什么都是企业级应用)

基于FineUIMVC的代码生成器(传统三层)v1.0的更多相关文章

  1. 基于FineUIMVC的代码生成器(传统三层)v1.0-2

    第一篇博客只是粗略说明了一下,其实这个工具真正用话可能大家还要细看下,我今天(连夜)写个例子,截几个图,做一下自定义模板的实例教程,因为代码生成本身是个工具,动画效果都是次要的,主要是工具本身,其中自 ...

  2. RDIFramework.NET平台代码生成器V1.0发布(提供下载)

    RDIFramework.NET平台代码生成器V1.0发布(提供下载)   RDIFramework.NET(.NET快速开发整合框架)框架做为信息化系统快速开发.整合的框架,其目的一至是给用户和开发 ...

  3. 痞子衡嵌入式:kFlashFile v1.0 - 一个基于Flash的掉电数据存取方案

    大家好,我是痞子衡,是正经搞技术的痞子.今天给大家带来的是痞子衡的个人小项目 - kFlashFile. 痞子衡最近在参与一个基于 i.MXRT1170 的项目,项目有个需求,需要在 Flash 里实 ...

  4. 基于swoole框架hyperf开发的纯API接口化的后台RBAC管理工具hyperfly@v1.0.0发布

    hyperfly@v1.0.0发布 本文地址http://yangjianyong.cn/?p=323转载无需经过作者本人授权 github地址:https://github.com/vankour/ ...

  5. 基于Qt5.5.0的sql数据库、SDK_tts文本语音朗读的CET四六级单词背诵系统软件的编写V1.0

    作者:小波 QQ:463431476 请关注我的博客园:http://www.cnblogs.com/xiaobo-Linux/ 我的第二款软件:CET四六级单词背诵软件.基于QT5.5.0.sql数 ...

  6. WebDriver基本API使用(基于Java)V1.0

    WebDriver基本API使用(基于Java)V1.0http://www.docin.com/p-803032877.html

  7. 部署Bookinfo示例程序详细过程和步骤(基于Kubernetes集群+Istio v1.0)

    部署Bookinfo示例程序详细过程和步骤(基于Kubernetes集群+Istio v1.0) 部署Bookinfo示例程序   在下载的Istio安装包的samples目录中包含了示例应用程序. ...

  8. 基于golang分布式爬虫系统的架构体系v1.0

    基于golang分布式爬虫系统的架构体系v1.0 一.什么是分布式系统 分布式系统是一个硬件或软件组件分布在不同的网络计算机上,彼此之间仅仅通过消息传递进行通信和协调的系统.简单来说就是一群独立计算机 ...

  9. 基于EF+WCF的通用三层架构及解析

    分享基于EF+WCF的通用三层架构及解析 本项目结合EF 4.3及WCF实现了经典三层架构,各层面向接口,WCF实现SOA,Repository封装调用,在此基础上实现了WCFContext,动态服务 ...

随机推荐

  1. Win7 VS2017编译Audacity2.1.3

    最近比较热衷折腾大型开源软件编译,因为在逐渐用开源软件替换盗版软件,除去盗版用着不安全的原因外,主要还是因为开源软件有源码,可以学习研究,另外就是体积小. 像Matlab每次装完都用不上什么功能,体积 ...

  2. 0x66 Tarjan算法与无向图连通性(1)

    ……是什么? 给定无向连通图G=(V,E)(不一定连通); 割点:若对于x∈V,从图中删去节点x以及所有与x关联的边后,G分裂成两个或两个以上不相连的子图,则称x为G的割点. 桥(割边):若对于e∈E ...

  3. (1)selenium-java环境搭建

    已经学过了用python模拟浏览器操作,现在开始尝试使用java搭建环境,开头第一步就遇到了很多的问题 1.准备jdk安装,不再描述,自行百度 2.安装eclipse 3.接下来就是新建项目了,new ...

  4. IDEA的Database管理台如何显示

    1.找出database的显示view 2.点击设置数据库,下载驱动文件,直接点击下载就行了,用什么数据库就下什么 3.填写服务器地址和用户名密码,点击测试,成功就表示连上了 4.一些常用按钮 5.目 ...

  5. C#关于xml文件和TreeView之间的转换解析

    主窗体: using System; using System.Collections; using System.Collections.Generic; using System.Componen ...

  6. UDF函数 解码url

    背景 URL 的编码 是ASCII十六进制格式.数仓接受到前端上报的URL,要对URL字段解码. 如要将 https"Fmybook.do%3Frequest_type%3D%26type% ...

  7. 剑指offer面试题25:二叉树中和为某一值的路径

    题目:输入一棵二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径.从根节点开始往下一直到叶节点所经过的节点形成一条路径. 解题思路:当使用前序遍历的方式访问某一节点时,把该节点添加到路径上 ...

  8. 深入浅出Redis

    一.Redis的诞生 Redis创建者,出生于西西里岛的意大利人(antirez)发明的,个人网站,http://invece.org.早年是系统管理员,2004-2006 年做嵌入式方面的工作,之后 ...

  9. SharedPreferences解析

    一.概述 SharedPreferences(简称SP)是Android中很常用的数据存储方式,SP采用key-value(键值对)形式,主要用于轻量级的数据存储,尤其适合保存应用的配置参数,但不建议 ...

  10. 第五节:详细讲解Java中的接口与继承

    前言 大家好,给大家带来详细讲解Java中的接口与继承的概述,希望你们喜欢 什么是接口(interface) 接口中的方法都是抽象方法,public权限,全是抽象函数,不能生成对象 interface ...