实现基于ASP.NET MVC快速开发平台

简介:

  最近一个月,自己利用业余时间开发一个基于ASP.NET MVC快速开发平台。现在勉强算个原型,但是感觉不是那么回事,把实现的过程写出来,欢迎大家拍砖。

    开发思想:利用Asp.Net MVC的思想,实现自己的一套开发平台。

     定位

    1、基本无需程序员写代码,通过配置的方式实现项目。

     2、在特定领域,提高ASP.NET MVC开发效率。

     3、不同的程序员写出同样的代码。

     4、提供一套可视化开发和代码生成的解决方案。

   实现思路:

    利用三个辅助开发工具生成Model、View、Controller的代码。

    Model:三层架构代码生成器。

    View:简易的表单设计器。我对表单的要求不是太高,通过几个封装好的控件组合成一个页面就行了。

    Controller :自定义函数,可视化的编程。

    通过三层架构代码生成器材生成Model。利用WPF或者SL实现一个可视化的表单设计器,通过反射Model,生成基本的操作页面,可以在设计器上拖拽和修改属性。使用WF4.0来处理业务逻辑,WF4.0的流程设计器非常强大,可以胜任复杂的业务逻辑处理。

     步骤很简单:先生成Model,在根据Model反射出表单,然后在表单上关联和定义相应Action。

    三层架构代码生成器:主要生成Model层的代码,用于数据的持久化。

 表单设计器:设计View,和生成View代码,通过控件组合的方式生成UI,界面要求统一和简单。

函数设计器:实现可视化的编程。用于可视化的书写复杂的业务逻辑代码。

示例:

下面我一步一步使用这三个工具,开发一个数据展示的应用程序Demo。

第一步:新建一个自定义的MVC模板项目,这个是我自己封装的一个项目模板,包括一些常用的dll、js、css等等。

 第二步:配置一级表单:

 第三步:配置一级表单动作点函数

 

第四步:生成Action代码和保存WF代码

复制代码
代码
public class  HomeController : Controller
{
[HandleError]
[HttpGet]
public  ActionResult Index()
{
IDictionary
< string object >  inputs  = new  Dictionary < string object > ();
IDictionary
< string object >  results  =  WorkflowInvoker.Invoke( new  IndexWF(), inputs);
return  View(results[ " result " ]);
}

}
复制代码

WF代码:

 

第六步:生成View:Index.aspx代码

第七步:将生成好的东西放到第一步创建的项目中

运行:

 

定义展示的详情页面:

定义Action:

详情页面运行效果:

总结:文本是对我用一个月业余时间走火入魔般的写的一个开发工具的总结。虽然没有达到我想要的结果,但是还是对MVC有了更进一步的了解。如果你也有这方面的想法和思考,欢迎加入QQ群96378091讨论,或者直接在我blog给我留言,谢谢。





本文转自麒麟博客园博客,原文链接:http://www.cnblogs.com/zhuqil/archive/2010/10/13/asp-net-mvc-fast-development-platform.html,如需转载请自行联系原作者

相关文章
|
1月前
|
开发框架 前端开发 .NET
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
91 0
|
1月前
|
开发框架 前端开发 JavaScript
JavaScript云LIS系统源码ASP.NET CORE 3.1 MVC + SQLserver + Redis医院实验室信息系统源码 医院云LIS系统源码
实验室信息系统(Laboratory Information System,缩写LIS)是一类用来处理实验室过程信息的软件,云LIS系统围绕临床,云LIS系统将与云HIS系统建立起高度的业务整合,以体现“以病人为中心”的设计理念,优化就诊流程,方便患者就医。
35 0
|
1月前
|
开发框架 前端开发 .NET
C# .NET面试系列六:ASP.NET MVC
<h2>ASP.NET MVC #### 1. MVC 中的 TempData\ViewBag\ViewData 区别? 在ASP.NET MVC中,TempData、ViewBag 和 ViewData 都是用于在控制器和视图之间传递数据的机制,但它们有一些区别。 <b>TempData:</b> 1、生命周期 ```c# TempData 的生命周期是短暂的,数据只在当前请求和下一次请求之间有效。一旦数据被读取,它就会被标记为已读,下一次请求时就会被清除。 ``` 2、用途 ```c# 主要用于在两个动作之间传递数据,例如在一个动作中设置 TempData,然后在重定向到另
148 5
|
1月前
|
开发框架 前端开发 .NET
进入ASP .net mvc的世界
进入ASP .net mvc的世界
40 0
|
1月前
mvc.net分页查询案例——mvc-paper.css
mvc.net分页查询案例——mvc-paper.css
8 0
|
1月前
|
XML 前端开发 定位技术
C#(NET Core3.1 MVC)生成站点地图(sitemap.xml)
C#(NET Core3.1 MVC)生成站点地图(sitemap.xml)
46 0
|
1月前
|
前端开发
.net core mvc获取IP地址和IP所在地(其实是百度的)
.net core mvc获取IP地址和IP所在地(其实是百度的)
134 0
|
1月前
|
前端开发
net core mvc获取IP地址和IP所在地(其实是百度的)
net core mvc获取IP地址和IP所在地(其实是百度的)
32 0
|
7月前
|
开发框架 自然语言处理 前端开发
基于ASP.NET MVC开发的、开源的个人博客系统
基于ASP.NET MVC开发的、开源的个人博客系统
57 0
|
前端开发 数据安全/隐私保护
net MVC中的模型绑定、验证以及ModelState
net MVC中的模型绑定、验证以及ModelState 模型绑定 模型绑定应该很容易理解,就是传递过来的数据,创建对应的model并把数据赋予model的属性,这样model的字段就有值了。
1666 0