用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区域的咨询功能(留言.投诉都是咨询).咨询跟文章非常相似,而且内容更少.更简单. ...
随机推荐
- Python基础篇(四)_组合数据类型的基本概念
Python基础篇——组合数据类型的基本概念 集合类型:元素的集合,元素之间无序 序列类型:是一个元素向量,元素之间存在先后关系,通过序号进行访问,没有排他性,具体包括字符串类型.元组类型.列表类型 ...
- VsCode代码段添加方法
VsCode代码段添加方法 我们在编写代码的过程中,常常会遇到一些固定的结构或常用的处理方法. 编写耗费时间尽力,这时我们想到了添加代码段功能,帮助我们快速的完成编写. 下面以VsCode为例子: 我 ...
- vmware导入ova文件踩坑记
问题来源 众所周知,所有的网络行为都会产生相应的网络流量,那么所有的网络攻击行为也有其对应的流量特点,那么是否能根据流量特点进而分析出其对应的是什么攻击行为呢? 我在虚拟机上使用vulnhub的靶场环 ...
- centOS6.5桌面版用不了中文输入法解决方案
1:centos6.5中 系统->首选项->输入法中选择“使用iBus(推荐)”,点击首选输入法n遍,没有任何效果. 2.我也弄了很多种方式包括用 yum install " ...
- IOS抓包工具Stream——让移动端的抓包变得轻而易举
有一天下晚班回家,在地铁上的时候,开发发来信息说,能不能把之前创建的bug再抓包看下数据.顿时心里就想,在地铁上,我上哪抓包去.之后百度了下,发现ios有一款非常实用的抓包工具,大家可以上App St ...
- 为什么 select count(*) from t,在 InnoDB 引擎中比 MyISAM 慢?
统计一张表的总数量,是我们开发中常有的业务需求,通常情况下,我们都是使用 select count(*) from t SQL 语句来完成.随着业务数据的增加,你会发现这条语句执行的速度越来越慢,为什 ...
- 拿 C# 搞函数式编程 - 3
前言 今天和某个人聊天聊到了 C# 的 LINQ,发现我认识的 LINQ 似乎和大多数人认识的 LINQ 不太一样,怎么个不一样法呢?其实 LINQ 也可以用来搞函数式编程. 当然,并不是说写几个 l ...
- IDEA报错:Could not find resource com/liwen/bean/userMapper.xml
主要原因设idea无法识别src路径下的xml文件,要把xml文件建立在resources文件下
- bugku论剑场web解题记录
前言 国庆这几天感觉没什么好玩的地方,家又离的太远,弱鸡的我便决定刷刷题涨涨知识,于是就有了这篇文章.. 正文 写的不对的地方欢迎指正 web26 打开直接就是代码,这应该就是一道代码审计的题了 这里 ...
- Win10远程桌面发生身份验证错误,要求的函数不受支持
昨儿个使用远程桌面,意外发的发现连不上测试环境了.身边的同事也有连不上的.一开始以为是远程机器可能出了问题,但是而后排查确认是自个儿机器问题.原因在与机器前天晚上自动升级了系统补丁,也有部分网友反映了 ...