"abp是ASP.NET Boilerplate简称,是一个用最佳实践和流行技术开发现代WEB应用程序的新起点,它旨在成为一个通用的WEB应用程序框架和项目模板"

abp官方网站:https://aspnetboilerplate.com/

abp开源项目:https://github.com/aspnetboilerplate

abp中主要的技术:

1,ASP.NET MVC 5、Web API 2、C# 5.0

2,DDD领域驱动设计 (Entities、Repositories、Domain Services、Domain Events、Application Services、DTOs等)

3,Castle windsor (依赖注入容器)

4,Entity Framework 6 \ NHibernate,数据迁移(数据迁移这个项目暂时没有用,详情看第二节)

5,Log4Net(日志记录)

6,AutoMapper(实现Dto类与实体类的双向自动转换)

7,Bootstrap

8,AngularJs(本项目暂时没用)

9,jQuery

10,其他JS库: jQuery.validate、jQuery.form、jQuery.blockUI、json2

11,AdminLTE(abp没有,本项目用到)

话不多说,abp是开源项目,我们前往官网去下载项目地址:https://github.com/aspnetboilerplate/aspnetboilerplate

现在官网的版本2.2.1,首先我们得安装

vs2013 update3以上版本

sqlserver 2008以上版本

另外需要安装最新的typescript  连接:https://www.microsoft.com/zh-CN/download/details.aspx?id=48593

abp最新版GitHub地址:https://github.com/aspnetboilerplate/aspnetboilerplate

客户端采用响应式布局,适配PC及移动端。前端框架AdminLTE,github地址:https://github.com/almasaeed2010/AdminLTE

表格控件则用到了bootstrap-table,github地址:https://github.com/wenzhixin/bootstrap-table

点击官网链接出现在我们面前的是abp最新版本根据上面的超做进行选择.

 注意:我用的是mvc5 不是.net core .

然后输入项目名字,如果有验证码就输入验证码,创建一个项目就可以了注意这里默认是勾选module-zero,图中未勾选,那下面我们先来看一下abp勾选module-zero的样子

 第二步修改链接地址,连接本地数据库

当然这里的Datebase JCmsErp本地SQL server 新建空的数据库,没任何表,等会儿我们会根据codefirst的数据库迁移功能自动创建数据库,注释的是abp默认路径

第三步在程序包管理控制台执行update-database命令(注意:这里一定要把WEB设置为启动项目,不然会报错:在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: SQL Network Interfaces, error: 26 - 定位指定的服务器/实例时出错))

然后本地数据库就自动创建成功了,不懂codefirst的同学可以去看一下月影的博客:http://blog.csdn.net/gentle_wolf/article/details/14004345 和  tkb至简的博客http://www.cnblogs.com/farb/p/ABPAdvancedTheoryContent.html#masteringEF

我们去看数据库用管理员名和密码,还有租户名字

abp实际上使用ef框架codefrist已经为我们创建好了数据库,然后我们再来看登陆界面

用户名:admin 密码123qwe 以及登陆进去的页面.这里我们用租户名登陆进来的,可以进行增删查改

租户不明白的同学可以看下tkb至简的博客:http://www.cnblogs.com/farb/p/ABPMultiTenancy.html,当然不明白也没关系,目前这个项目中并没有运用到多租户.

不过有兴趣的同学可以看一下

abp module-zero默认,界面是不是很丑,登陆界面是不是也很丑,还有codefirst的数据库迁移功能在实际运用的过程并不是太适合多人开发,容易冲突,然后我们在实际开发过程不可能用abp原声的界面,原生的登陆页面,怎么办,当然是自己动手去写啊!!

这就是我写这一系列文章的原因.同时也方便大家交流和指教.找出自身的不足之处.

下面给demo两张成果图片

登陆页面

页面页面展示

当然还有很多没有完善的地方,我希望通过这系列文章勉励自己,改变自己懒惰的性情,坚持去写一系列文章,当然这些都是下班时候写的,时间有限,更新时间不定.abp也是我喜欢的.net框架,一起努力一起见证.一起共勉!

ABP+AdminLTE+Bootstrap Table权限管理系统第一节--使用ASP.NET Boilerplate模板创建解决方案的更多相关文章

  1. ABP+AdminLTE+Bootstrap Table权限管理系统第九节--AdminLTE模板页搭建

    AdminLTE 官网地址:https://adminlte.io/themes/AdminLTE/index2.html 首先去官网下载包下来,然后引入项目. 然后我们在web层添加区域Admin以 ...

  2. ABP+AdminLTE+Bootstrap Table权限管理系统第二节--在ABP的基础做数据库脚本处理

    返回总目录:ABP+AdminLTE+Bootstrap Table权限管理系统一期 第一点,上一篇文章中我们讲到codefirst中一些问题包括如图,codefirst在每次执行命令的时候会生成新的 ...

  3. ABP+AdminLTE+Bootstrap Table权限管理系统第九节--AdminLTE引入及模板页和布局和菜单

    返回总目录:ABP+AdminLTE+Bootstrap Table权限管理系统一期 AdminLTE AdminLTE 官网地址:https://adminlte.io/themes/AdminLT ...

  4. ABP+AdminLTE+Bootstrap Table权限管理系统一期

       学而时习之,不亦说乎,温顾温知新,可以为师矣. 这也是算是一种学习的方法和态度吧,经常去学习和总结,在博客园看了很多大神的文章,写下一点对于ABP(ABP是“ASP.NET Boilerplat ...

  5. ABP+AdminLTE+Bootstrap Table权限管理系统第二节--数据库脚本

    第一点,上一篇文章中我们讲到codefirst中一些问题包括如图 1,codefirst在执行的数据库迁移过程中产生了很多文件,对于强迫症的我而言特别不爽,这些是可以不用生成的啊 2,在codefir ...

  6. ABP+AdminLTE+Bootstrap Table权限管理系统第七节--登录逻辑及abp封装的Javascript函数库

    经过前几节,我们已经解决数据库,模型,DTO,控制器和注入等问题.那么再来看一下登录逻辑.这里算是前面几节的一个初次试水. 首先我们数据库已经有的相应的数据. 模型和DTO已经建好,所以我们直接在服务 ...

  7. ABP+AdminLTE+Bootstrap Table权限管理系统第七节--登录逻辑及几种abp封装的Javascript函数库

    返回总目录:ABP+AdminLTE+Bootstrap Table权限管理系统一期         简介 经过前几节,我们已经解决数据库,模型,DTO,控制器和注入等问题.那么再来看一下登录逻辑.这 ...

  8. ABP+AdminLTE+Bootstrap Table权限管理系统第五节--WBEAPI及SwaggerUI

    一,Web API ABP的动态WebApi实现了直接对服务层的调用(其实病没有跨过ApiController,只是将ApiController公共化,对于这一点的处理类似于MVC,对服务端的 调用没 ...

  9. ABP+AdminLTE+Bootstrap Table权限管理系统第十一节--bootstrap table之用户管理列表

    这张开始bootstrap table,引入项目有两种方法,一种是直接去官网下载 地址:http://bootstrap-table.wenzhixin.net.cn/ 另一种是Nuget引入. 然后 ...

随机推荐

  1. docker私有库搭建过程(Registry)

    实验环境: CentOS7 1611 Docker 1.12.6 registry   2.0 1.安装并运行registry 安装: [root@docker01 ~]# docker pull r ...

  2. 如何卸载CentOS自带的apache

    查看安装的组件: rpm -qa | grep httpd 如果预装有apache,那么会显示像httpd-2.2.3-22.el5.centos这种的组件名. 卸载组件: rpm -e httpd- ...

  3. 打造一个简单的Java字节码反编译器

    简介 本文示范了一种反编译Java字节码的方法,首先通过解析class文件,然后将解析的结果转成java代码.但是本文并没有覆盖所有的class文件的特性和指令,只针对部分规范进行解析. 所有的代码代 ...

  4. linux+tomcat+jdk环境验证码无法显示

    我的环境配置:RHEL6.5+tomcat6+jdk1.6 今天遇到一个奇怪的现象,我的tomcat启动起来之后,网站无法显示验证码,导致无法登陆.我的tomcat启动过程是这样的: 我有一个进程守护 ...

  5. java的三大特性,封装,继承,多态

    封装 /** * 所谓封装,就是将对象具有的成员变量和成员函数包装和隐藏起来,让外界无法直接使用, * 被封装的成员只能通过某些特定的方式才能访问. * 实现封装有两个步骤: *   1.将不能暴露的 ...

  6. react-router 踩坑记

    react-router踩坑分享 背景 辛苦历程 JavaScript动态修改 第一次尝试 第二次尝试 第三次尝试 第四次尝试 总结步骤 其他方案 原理 History 常见的3种History Br ...

  7. iOS 手机时区获取问题

     1. 标准的获取时区的正确方法  [NSTimeZone resetSystemTimeZone]; // 重置手机系统的时区 NSInteger offset = [NSTimeZone loca ...

  8. JavaScript深入浅出补充——(二)语句和严格模式,对象

    三.语句和严格模式 JavaScript程序由语句组成,语句遵守语法规则. 例如:if语句,while语句,with语句等等-- block块语句 常用于组合0~多个语句,块语句用{}定义 直接以花括 ...

  9. Struts2之初识篇(一)——与struts的区别和基本配置

    Struts2资源下载地址: Struts官方地址:http://struts.apache.org/ 我这里下载了struts2的最新版本struts2-2.5.10.1-all.所有内容如下图: ...

  10. JavaWeb 后端 <十四> 文件上传下载

    1.文件上传与下载 案例: 注册表单/保存商品等相关模块! --à 注册选择头像 / 商品图片 (数据库:存储图片路径 / 图片保存到服务器中指定的目录) 1.1 文件上传 文件上传,要点: 前台: ...