用ASP.NET MVC5 +SQLSERVER2014搭建多层架构的数据库管理系统
用http://ASP.NET MVC5 +SQLSERVER2014搭建多层架构的数据库管理系统
背景:前段时间,给一家公司做外包(就是图标是朵菊花那家)。为了尽快实现交付,网上四处寻找适合中小型企业框架。花了几天无果,只在github上找了个(貌似作者还要收费),把前端半改造,后端彻底改造(最终版本全部没有使用github的代码)。现在,把这段时间的成果最初版本贡献出来。若是有类似需求的同学,尽可拿去用,不清楚的可以留言。
本人认为:除非是定制的软件和定价了的软件可以收费外,开源的都应该免费,鼓励攻城狮们不断开拓创新,再上面添砖加瓦,促进行业发展和社会进步。
需求:一个基本框架,填充内容实现快速开发,增删改查都用同一套代码
准备:
开发工具:VS2015+SQLSERVER2008(最低)
必要组件:
http://ASP.NET MVC5
StructureMap:实现IOC
IBatisNet:访问数据库
log4net:日志库
项目结构:

一步一步来:
1. 新建解决方案创建相关项目

2. 配置
2.1 封装StructureMap
在Core项目中,初始化StructureMap组件,初始化要用红框中的配置文件。注意:这里路径是网站的根目录的相对路径。有好几种配置方式,这是项目中实际使用的一种

Business.config 文件在哪儿?在主程序的config里面。注意:这些配置文件的属性,都要改为 始终复制。否则不会生成到网站的目录下。
配置文件的内容是什么?是接口和实现类的对应关系


2.2 封装IBatisNet
在Dao层,封装IBatisNet的方法供外部调用。Dao中的接口和实现类如何配置?参考2.1节

2.3 初始化StructureMap
在这里,调用StructureMap初始化方法

2.4 如何使用
在项目中合适的地方,照下图获取对应的接口实例

2.5 配置IBatisNet
注意这个图:这个是配置IBatisNet数据库驱动的

图中1:就是上图name=XX的驱动;图2是数据库连接;再下面的xml文件,就是用来存放具体SQL的地方

图1的部分:就是对应的数据库表;图2这些返回结果,或者参数需要用到这个类;图3就是具体的SQL。这里面的语法是单独的章节,以后有时间补上

2.6 配置日志组件
在这里重新创建个数据库,专门用来放日志。注意看里面的commandText。就是插入日志表的SQL。后面的节点照着写就对了,主要是控制输出的格式之类的,不解释

运行起来就是这个样子(此图可能与原作者的主界面相似,若是侵犯你的权益,请联系本人)

至此,本项目已经放到github。叫wisex.是指聪慧的,好用的,但现在还没达到这个水平,就算是心目中的一个期许吧。这个项目还在不断commit,希望有共同兴趣的朋友一起完善它吧
Wisex后台系统框架
前段时间,应客户需要开始做爬虫。这其中遇到不少坑。接下来,我会把这些从实战中总结出的知识点,贡献出来,还希望和高手有更多的交流
用ASP.NET MVC5 +SQLSERVER2014搭建多层架构的数据库管理系统的更多相关文章
- 关于ASP.NET或VS2005 搭建三层架构的理解
最近想学习ASP.NET建网站,关于ASP.NET或VS2005 搭建三层架构的理解,网上摘录了一些资料,对于第(2)点的讲解让我理解印象深刻,如下: (1)为何使用N层架构? 因为每一层都可以在仅仅 ...
- ASP.NET MVC5基础 – MVC文件架构
创建MVC项目 首先,我们使用Visual Studio2019创建一个MVC架构的应用程序.步骤如下:首先打开VS2019,在启动页选择[创建新项目].然后选择创建 ASP.NET Web 应用程序 ...
- ASP.NET MVC5+EF6搭建三层实例
一.创建项目解决方案 1.model层.BLL层.Dal层.Common层,都是类库 2.UI层使用MVC5 二.使用EF链接数据库 1.创建实体数据模型 2.选择来自数据库EF设计器 3.创建数据库 ...
- ASP.net MVC5 Code First填充测试数据到数据库
问题的产生 最近在看Adam Freeman的“Pro ASP.NET MVC5”,于是在工作机上面搭建了相应的运行环境,但是在自己的机器上面只有代码,没有数据库.记得在code first中可以新 ...
- asp.net MVC 5 Scaffolding多层架构代码生成向导开源项目(邀请你的参与)
Visual Studio.net 2013 asp.net MVC 5 Scaffolding代码生成向导开源项目 提高开发效率,规范代码编写,最好的方式就是使用简单的设计模式(MVC , Repo ...
- MVC 5 Scaffolding多层架构代码生成向导开源项目
asp.net MVC 5 Scaffolding多层架构代码生成向导开源项目(邀请你的参与) Visual Studio.net 2013 asp.net MVC 5 Scaffolding代码 ...
- ASP.NET MVC5基础-控制器(Controller)详解
在上文ASP.NET MVC5基础 – MVC文件架构中我们简单了解了下控制器Controller的作用,本文我将详细介绍控制器Controller的使用方法. Controller的运行过程 上文我 ...
- ASP.NET MVC5 网站开发实践(二) Member区域 - 文章管理架构
上次把member的用户部分完成,现在开始做文章管理部分.文章部分根据涉及显示现实文章列表,发布文章,修改文章,删除文章等功能.最终的实现目标是使用权限来控制用户是否能进行相应操作,管理员权限的会显示 ...
- ASP.NET MVC5 网站开发实践(二) Member区域 - 咨询管理的架构
咨询.留言.投诉等功能是网站应具备的基本功能,可以加强管理员与用户的交流,在上次完成文章部分后,这次开始做Member区域的咨询功能(留言.投诉都是咨询).咨询跟文章非常相似,而且内容更少.更简单. ...
随机推荐
- Java 基础(六):循环
循环 老生常谈的一个控制流程了,我们在是使用数组和集合的时候,遍历元素的时候经常会用到循环的结构,Java具有非常灵活的三种循环机制: 根据是否知道循环的次数可以为分为while循环,do...whi ...
- PHP 7 中的一些小技巧,你知道的有哪些
PHP 7 显著提高了整体性能.实际上主要的特性有 null 合并运算符或返回类型声明.如果你不知道它们,那么你应该去查看 PHP 文档. 这里有一些很少人知道的.可能有用的特性. 相同的命名空间,相 ...
- python获取群成员信息
#coding: utf-8 import itchat,datetime from itchat.content import TEXT itchat.auto_login(hotReload=Tr ...
- SVN分支合并指南
SVN分支合并主干具体操作步骤 1. 在装有svn插件的myeclipse中,在主干上选择需要合并的文件或文件夹, 右击--> team -->合并(merge) 2.选择合并类型--合并 ...
- Consider defining a bean named 'authenticator' in your configuration.
SpringBoot整合Shiro时出错: 异常日志: o.s.b.d.LoggingFailureAnalysisReporter: *************************** APPL ...
- P1969 积木大赛 题解
原题链接 简要题意: 每次把一段区间 \(+1\),问得到 \(a\) 数组的最小次数. 我们可以把 \(+1\) 得到 \(a\) 换成,从 \(a\) 依次 \(-1\) 得到 \(0\). 算法 ...
- 【洛谷】P2444 [POI2000]病毒——AC自动机
题目链接 题目描述 二进制病毒审查委员会最近发现了如下的规律:某些确定的二进制串是病毒的代码.如果某段代码中不存在任何一段病毒代码,那么我们就称这段代码是安全的.现在委员会已经找出了所有的病毒代码段, ...
- 从数据结构分析mysql为何使用B+tree
理解mysql为何选择升级版的二叉树,就需要对各种常用的二叉树进行对比.B+Tree是一种特殊的二叉树,本质上也算二叉树.自然会满足二叉树的一般特性. 比如,比节点数据大的在右边,节点数据小的在左边. ...
- Python-标准模块与第三方模块
标准模块 python官方自己的模块 os os与os.path os.chdir('desktop') 跳转至指定目录 os.listdir() ...
- Anomaly Detection-异常检测算法(Coursera-Ng-ML课程)
现实生活中有许多需要提前预防一些异常问题出现的情况,例如在飞机起飞前,对飞机各部分进行评估,看发动机等各个零件是否性能正常,若有潜在的问题(可能出现异常情况),则需要及时检修或更换. 那么我们如何去评 ...