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,提供了大量实用的基类和方法,更重要的是它提供了各种常见场景的编程模型

  1. 框架提供了4类ViewModel,涵盖了主流Web应用程序常见的功能,分别是:

    • BaseCRUDVM 提供最常见的数据增删改的功能
    • PagedListVM 提供分页列表以及导出的功能
    • ImportVM & TemplateVM 提供数据导入的功能
    • BatchVM 提供批量操作的功能
  2. 框架提供了数十种前台控件,包括了Form,Grid,Panel,Dialog等几乎所有常用控件,在不进行前后分离的情况下,后端人员也可以轻松写出漂亮的前台页面。目前框架只支持Layui作为前端UI,后期我们会支持更多。
  3. 框架提供了内置的用户,角色,用户组,数据权限,页面权限,菜单,日志,邮件,短信,文件等后台常用管理功能
  4. 框架支持单点登录,门户Portal,分布式数据库
  5. 框架提供了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的更多相关文章

  1. WTM 构建DotNetCore开源生态,坐而论道不如起而行之

    作为一个8岁开始学习编程,至今40岁的老程序员,这辈子使用过无数种语言,从basic开始,到pascal, C, C++,到后来的 java, c#,perl,php,再到现在流行的python. 小 ...

  2. Wtm携手LayUI -- .netcore 开源生态我们是认真的!

    经过WTM团队和LayUI团队多次深入协商,双方于2019年7月29日在北京中国国际展览中心正式达成战略合作意向, 双方签署了战略合作框架协议,LayUI团队承诺使用WTM框架的任何项目都可以免费使用 ...

  3. .net开源生态,WTM与NCC

    天下大势,分久必合,合久必分.改朝换代都如花开花谢,过眼云烟,更别提开发语言的更迭了. 我们所坚持的,只是那最初的感动,那“只是在人群中多看了你一眼”的惊艳.三十年河东,三十年河西,不忘初心,方得始终 ...

  4. WTM重磅更新,LayuiAdmin and more

    从善如登,从恶如崩.对于一个开发人员来说,那就是做一个好的系统不容易,想搞砸一个系统很简单,删库跑路会还不会么. 对于我们开源框架的作者来说,做一个好的框架就像登山(也许是登天),我们一步一步往上走, ...

  5. WTM送书活动:向更遥远的星辰大海起航~

    是的,没错~ 这一篇不是大老刘写的.哈哈~ 啥?  你想知道为啥? 大老刘为了你们不加班,熬夜改BUG,姑娘不乐意了... 然后... 后面请自行脑补~ 哎~生活还要继续鸭.... 那么,接下来由我陪 ...

  6. .NET Core 3.0 ,WTM 2.3.9发布

    .Net Core 3.0已经来了,WTM怎么可以落后呢.最新发布的WTM2.3.9版本已经支持.Net Core 3.0啦,现在在线生成项目的时候可以选择2.2和3.0两个版本.小伙伴们快来体验吧. ...

  7. WTM 3.1发布,完美支持.netcore 3.1

    在过去的2019年,承蒙各位的厚爱,WTM从零开始一年的时间在GitHub上收获了将近1600星,nuget上的下载量累计超过10万. WTM所坚持的低码开发,快速实现的理念受到了越来越多.netco ...

  8. WTM 3.5发布,VUE来了!

    千呼万唤中,WTM的Vue前后端分离版本终于和大家见面了,我曾经跟群里1000多位用户保证过Vue版本会在春天到来,吹过的牛逼总算是圆上了. WTM一如既往地追求最大程度提高生产效率,所以内置的代码生 ...

  9. WTM asp.net core应用程序在Ubuntu上和CentOS上部署

    wtm在Ubuntu上和CentOS上部署 项目发布 在Visual Studio中右击Web项目,选择发布,如下图: Ubuntu安装.net core运行时 Ubuntu我是用的Vmware虚拟机 ...

随机推荐

  1. ASP.NET Core多平台部署 (Windows Server+IIS与CentOS 7+Nginx)

    一,Windows Server+IIS部署 1,安装配置IIS,这个应该都不用多说了,教程一堆 2,下载安装.NET Core Runtime 与 .NET Core SDK,下载请点击下载地址,如 ...

  2. 与公司2位经理的交流,Web开发知识库建设

    1.代码库3种类型 WebCommon:网站开发技术选型和最佳实践 FansCommons :各种可以复用的代码 CentronCore,CentronWeb 3种类型:通用,web,环境(通用+We ...

  3. [bzoj3680]吊打XXX_模拟退火

    吊打XXX bzoj-3680 题目大意:在平面上给定n个点,每个点有一个权值.请在平面上找出一个点(不一定在这n个点内找)使得这个点到n个点的距离*权值最小,即求这n个点的重心. 注释:$1\le ...

  4. HDU 4505

    哈哈哈哈哈哈哈哈哈,省赛,一等奖,一定的一定的一定的一定的... #include <iostream> #include <cstdio> #include <cstr ...

  5. java editor template Eclipse中的快速Java\JavaScript代码模板使用

    java editor template Eclipse中的快速Java\JavaScript代码模板使用 学习了:http://technicalsearch.iteye.com/blog/2150 ...

  6. [React] Update Application State with React Apollo ApolloConsumer Component

    In this lesson I refactor some code that utilizes the Mutation component to update client-side cache ...

  7. HDU3117-Fibonacci Numbers(矩阵高速幂+log)

    题目链接 题意:斐波那契数列,当长度大于8时.要输出前四位和后四位 思路:后四位非常easy,矩阵高速幂取模,难度在于前四位的求解.  已知斐波那契数列的通项公式:f(n) = (1 / sqrt(5 ...

  8. 利用JAVA反射机制设计通用的DAO

    利用JAVA反射机制设计一个通用的DAO 反射机制 反射机制指的是程序在运行时能够获取自身的信息.在java中,只要给定类的名字,    那么就可以通过反射机制来获得类的所有信息. 反射机制创建类对象 ...

  9. Tomcat启动时项目反复载入,导致资源初始化两次的问题

    近期在项目开发測试的时候,发现Tomcat启动时项目反复载入,导致资源初始化两次的问题  导致该问题的解决办法: 例如以下图:在Eclipse中将Server Locations设置为"Us ...

  10. class com.sun.jersey.core.impl.provider.entity.XMLJAXBElementProvider$Text

    运行mapreduce遇到的错: Java.lang.ClassCastException: classcom.sun.jersey.core.impl.provider.entity.XMLJAXB ...