用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区域的咨询功能(留言.投诉都是咨询).咨询跟文章非常相似,而且内容更少.更简单. ...
随机推荐
- 适用于 macOS 下 2K 显示器开启 HiDPI 的简便解决方案
前阵子入手了一款2k的显示器用于mbp的拓展屏幕,但由于苹果系统的严格限制,只有在4K及以上显示器上才能开启自带的HiDPI进行缩放以达到retina显示屏的效果.2k显示器下的字体会偏小发虚,使用1 ...
- java-接口(新手)
//创建的一个包名. package jiekou; //接口方法. //创建一个接口并且起名字. public interface JK { //抽象的返回值.(具体功能未定义,需要自己定义) ab ...
- JavaScript----DOM和事件的简单学习
##DOM简单学习 * 功能:控制html文档的内容 * 代码:获取页面标签(元素)对象:Element * document.getElementById("id值"):通 ...
- git push错误,如何回滚
--> git push Counting objects: 81, done.Delta compression using up to 4 threads.Compressing objec ...
- [math] Codeforces 597A Divisibility
题目:http://codeforces.com/problemset/problem/597/A Divisibility time limit per test 1 second memory l ...
- CF codeforces A. New Year Garland【Educational Codeforces Round 79 (Rated for Div. 2)】
A. New Year Garland time limit per test 1 second memory limit per test 256 megabytes input standard ...
- 如何将一篇文章导入Endnote并将引用插入Word
Endnote作为一款专注管理文献引用的工具用起来还是很方便的,极大地简化了管理引用格式等相关工作,让我们能够把更多精力用在写文章本身. 今天就介绍一下如何将一篇我们看到的觉得有参考价值的文章导入wo ...
- [LeetCode] 936. Stamping The Sequence 戳印序列
You want to form a `target` string of lowercase letters. At the beginning, your sequence is target.l ...
- BP神经网络及异或实现
BP神经网络是最简单的神经网络模型了,三层能够模拟非线性函数效果. 难点: 如何确定初始化参数? 如何确定隐含层节点数量? 迭代多少次?如何更快收敛? 如何获得全局最优解? ''' neural ne ...
- Binder驱动理解
1.Binder的三层架构 2.BC.BR的理解 通信模型 Binder协议包含在IPC数据中,分为两类: BINDER_COMMAND_PROTOCOL:binder请求码,以"BC_&q ...