WTM
WTM的由来
WalkingTec.Mvvm框架(简称WTM)最早开发与2013年,基于Asp.net MVC3 和 最早的Entity Framework, 当初主要是为了解决公司内部开发效率低,代码风格不统一的问题。经历了四年间数十个项目的考验,框架逐步的完善,推出了四个主要版本。
2017年9月,我们将代码移植到了.Net Core上,并进行了深度优化和重构,推出了基于Asp.net Core和EF Core的全新框架,新框架在架构,稳定性,速度上都有长足进步,真正成为一款高效开发的利器。
WTM解决的问题
对于一个Web应用程序,20%的功能是简单的增删改查,50%的功能是稍微复杂一些的增删改查,只有30%的功能是真正具有复杂逻辑的,但其实也是增删改查。。。WTM框架把常规编码结构化,重复编码自动化,大大提高了开发效率
如果你要开发的是一个面向内部人员的后台管理程序,WTM框架绝对是你的最佳选择,它连通了前台UI和后台代码。你不需要前后台分离,不需要两个人配合,减少成本,缩短工期。
当然你也可以使用WTM框架来编写服务,只是不使用框架提供的前端UI功能而已,对于后端代码还是可以提高效率
WTM提供了什么
WTM连通了前台UI,后台代码,和数据库操作。封装了Model,ViewModel,Controller,TagHelper,提供了大量实用的基类和方法,更重要的是它提供了各种常见场景的编程模型
- 框架提供了4类ViewModel,涵盖了主流Web应用程序常见的功能,分别是:
- BaseCRUDVM 提供最常见的数据增删改的功能
- PagedListVM 提供分页列表以及导出的功能
- ImportVM & TemplateVM 提供数据导入的功能
- BatchVM 提供批量操作的功能
- 框架提供了数十种前台控件,包括了Form,Grid,Panel,Dialog等几乎所有常用控件,在不进行前后分离的情况下,后端人员也可以轻松写出漂亮的前台页面。目前框架只支持Layui作为前端UI,后期我们会支持更多。
- 框架提供了内置的用户,角色,用户组,数据权限,页面权限,菜单,日志,邮件,短信,文件等后台常用管理功能
- 框架支持单点登录,门户Portal,分布式数据库
- 框架提供了Radis,DFS等后台开发常用库的简化操作
创建项目
在vs中新建项目,然后选择Asp.net Core Web应用程序
再选择模型视图控制器模式的Web应用程序

确定后vs会为我们建立好一个asp.net Core的项目

添加WTM的引用
Install-Package WalkingTec.Mvvm.Mvc -Version 1.3.10-pre3-insider161
添加之后,把vs生成的框架中不需要的文件删掉,只保留启动mvc必须的几个文件


之后我们F5进行调试,当然因为我们把所有Controller都删了,网页肯定跑不起来,会直接报错
但是不用管它,在地址栏的后面加/_setup,会进入一个页面,这是引用的WTM中封装的页面

把链接字符串改为自己数据库的链接串,然后数据库类型,名称等信息看情况改一下,不需要就保持默认,填完后点击 开始配置
配置完毕后停止调试,这时你会发现项目多了不少东西

这些文件是框架自动生成的登录和首页,重新生成一下项目,按F5启动调试,登录后你会发现,一个框架已经搭好了
WTM的更多相关文章
- WTM 构建DotNetCore开源生态,坐而论道不如起而行之
作为一个8岁开始学习编程,至今40岁的老程序员,这辈子使用过无数种语言,从basic开始,到pascal, C, C++,到后来的 java, c#,perl,php,再到现在流行的python. 小 ...
- Wtm携手LayUI -- .netcore 开源生态我们是认真的!
经过WTM团队和LayUI团队多次深入协商,双方于2019年7月29日在北京中国国际展览中心正式达成战略合作意向, 双方签署了战略合作框架协议,LayUI团队承诺使用WTM框架的任何项目都可以免费使用 ...
- .net开源生态,WTM与NCC
天下大势,分久必合,合久必分.改朝换代都如花开花谢,过眼云烟,更别提开发语言的更迭了. 我们所坚持的,只是那最初的感动,那“只是在人群中多看了你一眼”的惊艳.三十年河东,三十年河西,不忘初心,方得始终 ...
- WTM重磅更新,LayuiAdmin and more
从善如登,从恶如崩.对于一个开发人员来说,那就是做一个好的系统不容易,想搞砸一个系统很简单,删库跑路会还不会么. 对于我们开源框架的作者来说,做一个好的框架就像登山(也许是登天),我们一步一步往上走, ...
- WTM送书活动:向更遥远的星辰大海起航~
是的,没错~ 这一篇不是大老刘写的.哈哈~ 啥? 你想知道为啥? 大老刘为了你们不加班,熬夜改BUG,姑娘不乐意了... 然后... 后面请自行脑补~ 哎~生活还要继续鸭.... 那么,接下来由我陪 ...
- .NET Core 3.0 ,WTM 2.3.9发布
.Net Core 3.0已经来了,WTM怎么可以落后呢.最新发布的WTM2.3.9版本已经支持.Net Core 3.0啦,现在在线生成项目的时候可以选择2.2和3.0两个版本.小伙伴们快来体验吧. ...
- WTM 3.1发布,完美支持.netcore 3.1
在过去的2019年,承蒙各位的厚爱,WTM从零开始一年的时间在GitHub上收获了将近1600星,nuget上的下载量累计超过10万. WTM所坚持的低码开发,快速实现的理念受到了越来越多.netco ...
- WTM 3.5发布,VUE来了!
千呼万唤中,WTM的Vue前后端分离版本终于和大家见面了,我曾经跟群里1000多位用户保证过Vue版本会在春天到来,吹过的牛逼总算是圆上了. WTM一如既往地追求最大程度提高生产效率,所以内置的代码生 ...
- WTM asp.net core应用程序在Ubuntu上和CentOS上部署
wtm在Ubuntu上和CentOS上部署 项目发布 在Visual Studio中右击Web项目,选择发布,如下图: Ubuntu安装.net core运行时 Ubuntu我是用的Vmware虚拟机 ...
随机推荐
- django QuerySet对象转换成字典对象
>>> from django.contrib.auth.models import User >>> from django.forms.models impor ...
- C# 实现串口发送数据(不用串口控件版)
参考:https://blog.csdn.net/mannix_lei/article/details/79979432 https://www.cnblogs.com/ElijahZeng/p/76 ...
- UOJ #219 BZOJ 4650 luogu P1117 [NOI2016]优秀的拆分 (后缀数组、ST表)
连NOI Day1T1都不会做...看了题解都写不出来还要抄Claris的代码.. 题目链接: (luogu)https://www.luogu.org/problemnew/show/P1117 ( ...
- Easyphp让其他电脑访问
1.将httpd.conf中的Listen 127.0.0.1:80,修改为Listen 80. 2.重启
- 洛谷 P1383 codevs 3333 高级打字机
题目描述 早苗入手了最新的高级打字机.最新款自然有着与以往不同的功能,那就是它具备撤销功能,厉害吧. 请为这种高级打字机设计一个程序,支持如下3种操作: 1.T x:在文章末尾打下一个小写字母x.(t ...
- $GPRMC解析
http://blog.csdn.net/zccst/article/details/4235068 由于$GPRMC比较重要,所以重点讲解: $GPRMC(Recommended Minimum S ...
- ASP.NET--IIS的Http请求流程
下面的文章是基于IIS经典模式给出的流程图,和IIS集成模式有些区别,WIN7系统自带的是IIS7,和文章分写的有些区别,现在基本上都用IIS7了,所以不要入坑 伯乐在线的文章一 伯乐在线的文章二
- php学习之道:WSDL具体解释(一)
WSDL文档使用web服务描写叙述语言来定义服务. 文档包含逻辑(抽象)部分和详细部分. 抽象部分用于定义独立于实现的数据类型和消息,详细部分定义一个endpoint怎样实现一个能够与外界进行交互的服 ...
- PowerPC汇编指令集
PowerPC 体系结构规范(PowerPC Architecture Specification)公布于 1993 年,它是一个 64位规范 ( 也包括 32 位子集 ).差点儿全部常规可用的 Po ...
- jQuery高性能自己定义滚动栏美化插件
malihu是一款高性能的滚动栏美化jQuery插件. 该滚动栏美化插件支持水平和垂直滚动栏,支持鼠标滚动,支持键盘滚动和支持移动触摸屏. 而且它能够和jQuery UI和Bootatrap完美的结合 ...