用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区域的咨询功能(留言.投诉都是咨询).咨询跟文章非常相似,而且内容更少.更简单. ...
随机推荐
- c语言课程设计--图书/音乐管理系统
这个代码因为配置信息的原因不能直接整个拿去用(o゜▽゜)o☆ 这个代码因为配置信息的原因不能直接整个拿去用(o゜▽゜)o☆ 这个代码因为配置信息的原因不能直接整个拿去用(o゜▽゜)o☆ 只能提供一个思 ...
- (原)Non-local Neural Networks
转载请注明出处: 论文: https://arxiv.org/abs/1711.07971 第三方pytorch代码: https://github.com/AlexHex7/Non-local_py ...
- 动态规划-TSP问题-最短超级串
2020-03-03 22:55:08 问题描述: 给定一个字符串数组 A,找到以 A 中每个字符串作为子字符串的最短字符串. 我们可以假设 A 中没有字符串是 A 中另一个字符串的子字符串. 示例 ...
- RNN,GRU,LSTM
2019-08-29 17:17:15 问题描述:比较RNN,GRU,LSTM. 问题求解: 循环神经网络 RNN 传统的RNN是维护了一个隐变量 ht 用来保存序列信息,ht 基于 xt 和 ht- ...
- [模板] trie树 (字典树)
本文基于https://www.cnblogs.com/TheRoadToTheGold/p/6290732.html #include<bits/stdc++.h> using name ...
- pycharm创建虚拟环境venv和添加依赖库package
1.创建虚拟环境 因为项目采用不同版本的python,所依赖的库的版本也不一样,为了避免版本冲突,为每一个项目每个python版本创建一个虚拟环境,环境中所使用的依赖库也是独立存在,不会被其他版本或其 ...
- 深度学习、物联网专家Sunil Kumar Vuppala博士独家专访
介绍 有多种方法可以学习数据科学,机器学习和深度学习概念.您可以观看视频,阅读文章,参加课程,参加会议等.但是有一件事是无法替代的----经验. 我个人从与数据科学专家和行业领袖的交流中学到了很多.他 ...
- 使用室内三维地图引擎ESMap来管理摄像头设备、消防设备和人员轨迹展示
目前室内三维地图如何轻量化,能够在手机微信.电脑浏览器等平台快速显示地图,显示的地图性能好,转动地图不卡是大家都要面对的问题, 使用室内三维地图引擎ESMap后目前可以不用操心这方面的问题,开发只需要 ...
- Java多线程问题40个
1.多线程有什么用? 一个可能在很多人看来很扯淡的一个问题:我会用多线程就好了,还管它有什么用?在我看来,这个回答更扯淡.所谓”知其然知其所以然”,”会用”只是”知其然”,”为什么用”才是”知其所以然 ...
- 模块 heapq_堆排序
_heapq_堆排序 该模块提供了堆排序算法的实现.堆是二叉树,最大堆中父节点大于或等于两个子节点,最小堆父节点小于或等于两个子节点. 创建堆 heapq有两种方式创建堆, 一种是使用一个空列表,然后 ...