MVC Scaffolding SmartCode-Engine 更新
概述
通过扩展visual studio.net scaffolding组件,添加了一套功能完善的代码模板,包括Controller,Model,View,Businessd等各种功能的代码,配合Entity Framework Code-Frist功能实现快速构建业务系统的一套开发工具.
主要优势
市面上类似的代码生成工具有很多,但完全集成在visual studio.net以插件形式存在的几乎没有,大部分都是通过先定义表结构(数据字典)再运行工具生成对应的代码.然后再手工拷贝到对应的项目中,而改项目就是简单的多,只需要把实体对象定义出清楚,直接再项目中运行新增controller后选择需要的实体对象就可以.非常快捷.
不足之处
目前scaffolding组件只能在一个solution中的单个project中添加源代码文件,还没有办法降不同层的代码新建到对应的project中去,比如根据实体对应分别新建不同的project,对大型项目的分工会更好.
主要功能
- 与Visual Studio.Net 2017无缝集成
- 快速生成标准的C.R.U.D代码
- 符合经典的Asp.Net MVC5 N层架构
- 运行环境.Net framework 4.7.1+
- 支持Sql Server,MySql,Oracle等主流数据库
- 前端Javascript采用ES6规范
细节提升
- 项目开始与2014年
- Controller升级异步执行采用(async/await)
- 使用Microsoft Unity DI & IoC
- 前端采用Smart Admin模板
- 前端控件一律采用Easyui组件
- 前端Js Callback改成箭头函数(Arrow Function)加入(async/await)方法
- 新增对数据编辑模式的设定一种是弹出窗口操作,一种是直接在datagrid内部开启编辑状态
- 更友好更详细的操作信息的提示
为什么使用EasyUI而不使用Smart Admin模板自带的标准Input.主要标准的Input虽然样式更漂亮,但功能比较单一,很多操作不是很方便,EasyUI社区比较活跃文档比较全面入手比较简单.但不足之处就是与responsive htmj兼容性不好,这里主要是我对easyui css不熟导致
代码模板
模板 | 功能 |
Controller.cs.t4 | 控制层代码与View层所有操作包括增删改查的全部功能 |
EntityQuery.cs.t4 | 查询逻辑的封装类参考URF.NET中的功能 |
EntityRepositoryExtension.cs.t4 | 对实体对象的增删改查的封装参考URF.NET中的功能 |
IEntityService.cs.t4 | 业务逻辑层代码参考URF.NET中的功能 |
EntityService.cs.t4 | 业务逻辑层具体实现的代码参考URF.NET中的功能 |
Index.cs.t4 | 主View代码包括datagrid现实,增删改查的功能实现 |
_PopupDetailFormView.cs.t4 | 弹出框操作表单 |
... | 辅助功能代码 |
... |
Demo
项目案例
我的联系方式,欢迎讨论
qqq群: 942771435
MVC Scaffolding SmartCode-Engine 更新的更多相关文章
- ASP.NET MVC 5 SmartCode Scaffolding for Visual Studio.Net
介绍 ASP.NET MVC 5 SmartCode Scaffolding是集成在Visual Studio.Net开发工具中一个ASP.NET MVC Web应用程序代码生成框架,使用SmartC ...
- MVC UpdateModel的未能更新XXXXX的类型模型
关于MVC UpdateModel的未能更新XXXXX的类型模型 的问题: 最近做MVC3的项目,相信很多人都碰到过这个问题,在此记录一下,异常:UpdateModel的未能更新XXXXX的类型模型 ...
- ASP.NET MVC深入浅出系列(持续更新) ORM系列之Entity FrameWork详解(持续更新) 第十六节:语法总结(3)(C#6.0和C#7.0新语法) 第三节:深度剖析各类数据结构(Array、List、Queue、Stack)及线程安全问题和yeild关键字 各种通讯连接方式 设计模式篇 第十二节: 总结Quartz.Net几种部署模式(IIS、Exe、服务部署【借
ASP.NET MVC深入浅出系列(持续更新) 一. ASP.NET体系 从事.Net开发以来,最先接触的Web开发框架是Asp.Net WebForm,该框架高度封装,为了隐藏Http的无状态模 ...
- MVC linq To SQL更新数据库操作
首先在视图中提交数据,使用Html.BeginForm() @using(Html.BeginForm()) { @Html.EditorForModel() //编辑模板.控制器中传过来的数据 &l ...
- MVC基础知识-持续更新....
1.如何在自动生成的视图中显示需要的字段名称: 在相应的定义字段中添加Display,例如: [Display(Name = "用户名:")] public string User ...
- (七)学习MVC之CodeFirst迁移更新数据库
1.首先在程序包管理控制台输入:enable-migrations -force ,然后回车: 问题1: The EntityFramework package is not installed on ...
- mvc EF 从数据库更新实体,添加视图实体时添加不上的问题
视图对象没有一列为非null的,解决办法,在视图中,将某一列排除为null的可能,比如:isnull(te,1),即可.
- Devexpress MVC GridView / CardView (持续更新)
//获取gridview里面的combo box 显示的文本 //获取某个column在gridview的 index RightGridView.GetColumnByField("Fun ...
- ASP.NET MVC 5 - 查询Details和Delete方法
在这部分教程中,接下来我们将讨论自动生成的Details和Delete方法. 查询Details和Delete方法 打开Movie控制器并查看Details方法. public ActionResul ...
随机推荐
- VS2017简单使用
1. 2.删除下面的文件 3.点击属性 4.改为否 不使用预编译头 万能头文件自己导入网上有教程
- angular.uppercase()
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 201771010118 马昕璐《面向对象程序设计java》第十二周学习总结
第一部分:理论知识学习部分 用户界面:用户与计算机系统(各种程序)交互的接口 图形用户界面:以图形方式呈现的用户界面 AET:Java 的抽象窗口工具箱包含在java.awt包中,它提供了许多用来设计 ...
- 我用linux系统的采坑记
我的新Ubuntu18,也没安装什么,但是在使用过程中总是莫名其妙的卡死,真的很烦.有时候cpu使用率接近100%,有时候貌似是内存不够了,但是我明明是8GB,这些小问题搞得我很恼火.这样的机器真的不 ...
- Multi-Get API
multiGet API并行地在单个http请求中执行多个get请求. Multi-Get Request MultiGetRequest构造函数为空,需要你添加`MultiGetRequest.It ...
- 神经网络_线性神经网络 3 (Nerual Network_Linear Nerual Network 3)
1 LMS 学习规则_解方程组 1.1 LMS学习规则举例 X1=[0 0 1]T,t1=0:X2=[1 0 1]T,t2=0:X3=[0 1 1]T,t3=0:X1=[1 1 1]T,t1=1. 设 ...
- HBuilder git合作-上传项目到Git Hub
1.初始项目的创建 这里假设你已经在Git Hub上面建立好了代码的远程仓库,并已经邀请好了队员 在HBuidler中创建好初始的项目,然后右键,"Team"->" ...
- 查看Python安装路径
由于笔者自己经常忘记了如何查看Python的安装路径,又经常会用到Python的安装路径,因此记录一下,我们可以在命令行模式下输入: >>> import sys >>& ...
- 【安富莱二代示波器教程】第19章 附件E---参考资料
第19章 附件E---参考资料 DSP教程 http://forum.armfly.com/forum.php?mod=viewthread&tid=3886 . FreeRTOS教 ...
- [Swift]LeetCode983. 最低票价 | Minimum Cost For Tickets
In a country popular for train travel, you have planned some train travelling one year in advance. ...