开篇说明:

此篇博客是属于半教程博客,为什么说是半教程呢。因为我不会打算说什么理论性的东西,没必要。要看理论性的资料以及基础信息,请前往tkb至简和@阳光铭睿的博客查看文档资料。

  2017年1月15日号的时候录制了关于这个项目的视频。

大家可以看看:传送门

开发环境:

vs2015 update3

sqlserver 2012

使用ABP版本说明:

本次教程更新时间为:2016-12-27 12:35:

abp版本说明:

使用的是abp v1.13和abpzero v1.13

作为开发版本,也就是截止为更新时间的最新版本。

目前在1.13版本ABP需要安装最新的typescript 2.1

链接:http://www.microsoft.com/zh-CN/download/details.aspx?id=48593

大家自行下载安装

扫个小盲:

MPA:为多页面,通过服务器端进行渲染razor进行绑定数据的方式(等其他情况。

SPA:则为单页面,可以用作前后端分离如:vue,angular这些前端技术,而后端只需要提供webapi就可以了(当然还有其他方式。

1、首先创建一个模板解决方案“PhoneBook”

打开ABP的官方网站:http://www.aspnetboilerplate.com/Templates

创建“YoYoCMS.PhoneBook”然后点击“Create my project!”按钮如下图

输入验证码,开始下载。

图片说明:

我们按照上图说的操作。所以平时大家在群里提那么奇奇怪怪的问题的时候,先看看自己是否有按照这样在操作。

2、运行该项目示例

个人习惯,我会先修改他的连接字符串。默认为windows用户登录,我改为数据库sa用户登录

<add name="Default" connectionString="Data Source=.; Database=AbpZeroTemplateV0; User ID=sa; Password=123;" providerName="System.Data.SqlClient" />

 

他们的区别在于创建数据库关系视图的时候就会发现权限的问题

这里请看图,选择yoyocms.phonebook.entityframework层

然后就发现报错了。。。

在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: SQL Network Interfaces, error: 26 - 定位指定的服务器/实例时出错)

解决方法:

选中””为启动项目,然后再重新生成解决方案。然后再次执行“update-database”。

运行项目成功

登录的时候发现有个租户名称需要填写。我们之前下载的时候,土牛的下载信息中已经说明了。默认开启的多租户模式。

3、多租户功能演示

当前页面为默认的多租户登录页面,也就是说不同的租户登录,看到的数据其实是不一样的。如果租户名称默认不填写的话,那么登录的就是Host用户。

Host用户可以对租户信息进行添加删除修改和查询。而租户就没有添加其他租户的权利信息。

3-1、登录Host用户,账号:admin密码:123qwe

此处可以对默认租户“default”进行其他操作,当然现在的模板页面只有添加租户信息

上图中,字段给的比较少,大家可以对字段进行添加。

建议如果使用多租户功能的话:租户名称必须由2个以上字母、数字、-、_组成,以字母开头

3-2、使用租户“ddxc”登录

如上,登录后会发现[Tenants]已经没有了。因为租户是不具备添加租户的权限。

然后我们创建一个用户“yingmu”密码:“123qwe”

提示邮箱已经被占用,换一个

3-3 使用“Default“租户登录

相同的过程就不演示了。这里可以看到用户列表里面没有樱木花道的信息。

这个就是启用了多租户的效果。

不同租户之间的数据信息是分隔开了的。

如果不明白他是怎么回事的同学看看下图:

这个游戏大家应该都知道。

一个游戏N个区。

这里不同的大区就是使用了多租户的功能。

使用多租户的场景有哪些:企业模板网站、钉钉、今目标、任务管理系统等等都可以算作是多租户的使用场景。

第一次这么正式的写博客,如果大家有什么问题和建议可以到群里找我,我们相互沟通和交流。

群号:104390185(提供某科学上网)

-返回目录-  ABP打造一个《电话簿项目》

ABP教程-通过ABPboilerplate模版创建项目的更多相关文章

  1. ABP教程-打造一个《电话簿项目》-目录-MPA版本-基于ABP1.13版本

    此系列文章会进行不定期的更新,应该会有6章左右. 感兴趣的朋友可以跟着看看,本教程适合已经看过ABP的文档但是又无从下手的小伙伴们. 初衷: 发布系列教程的原因是发现ABP在园子火了很久,但是发现还是 ...

  2. [ABP教程]第三章 创建、更新和删除图书

    Web应用程序开发教程 - 第三章: 创建,更新和删除图书 关于本教程 在本系列教程中, 你将构建一个名为 Acme.BookStore 的用于管理书籍及其作者列表的基于ABP的应用程序. 它是使用以 ...

  3. WebStorm中Node.js项目配置教程(1)——创建项目

    Node.js绝对是一个web开发的热点话题,作为web神器的WebStorm也是开发Node.js的佼佼者. 接下来就Node.js项目在WebStorm的配置操作就行详细的讲解,首先是创建项目.两 ...

  4. Scrapy教程——搭建环境、创建项目、爬取内容、保存文件

    1.创建项目 在开始爬取之前,您必须创建一个新的Scrapy项目.进入您打算存储代码的目录中,运行新建命令. 例如,我需要在D:\00Coding\Python\scrapy目录下存放该项目,打开命令 ...

  5. Symfony 框架实战教程——第一天:创建项目(转)

    这个系列的实战博客真是太有用了,很多例子自己调试也是通的,不同于很多网上不同的实战例子...附上原文地址  https://www.chrisyue.com/symfony-in-action-day ...

  6. 创建ABPboilerplate模版项目

    本文是根据角落的白板报的<通过ABPboilerplate模版创建项目>一文的学习总结,感谢原文作者角落的白板报. 1 准备 开发环境: Visual Studio 2015 update ...

  7. cocos2d-x使用python脚本创建项目的简单方法

    本文有CC原创,转载请注明地址:http://blog.csdn.net/oktears/article/details/13297003 在cocos2d-x2.1.4以上的版本中,取消了使用vs模 ...

  8. SharePoint 2013 代码实现自定义的站点模版创建Site Collection

    先需要将自定义的站点模版从网站集转移到Farm中. 找一个自己已经完成配置及设计的网站,在网站设置里面选择另存为模版.要注意的是不是所有的站点类型都有另存为模版的功能. 存完之后可在解决方案库的界面里 ...

  9. [ABP教程]第一章 创建服务端

    Web应用程序开发教程 - 第一章: 创建服务端 关于本教程 在本系列教程中, 你将构建一个名为 Acme.BookStore 的用于管理书籍及其作者列表的基于ABP的应用程序. 它是使用以下技术开发 ...

随机推荐

  1. Jenkins 安装的HTML Publisher Plugin 插件无法展示ant生成的JunitReport报告

    最近在做基于jenkins ant  junit 的测试持续集成,单独ant junit生成的junitreport报告打开正常,使用Jenkins的HTML Publisher Plugin 插件无 ...

  2. Vagrant 基础全面解析

    这篇 Vagrant 入门文章将带你创建一个 Vagrant 项目,这个过程将会用到 Vagrant 所提供的主要基本特性.如果想了解 Vagrant 能为你带来哪些好处,可以阅读 Vagrant 官 ...

  3. c#与java的区别

    经常有人问这种问题,用了些时间java之后,发现这俩玩意除了一小部分壳子长的还有能稍微凑合上,基本上没什么相似之处,可以说也就是马甲层面上的相似吧,还是比较短的马甲... 一般C#多用于业务系统的开发 ...

  4. AndroidTips-052:.aar文件依赖

    aar aar 文件是android 类库项目的输出文件,其中可以包含普通的.class,清单,以及android项目特有的资源文件. 使用方式 将.aar文件放在在自己项目的libs目录下 在gra ...

  5. MVVM设计模式和WPF中的实现(四)事件绑定

    MVVM设计模式和在WPF中的实现(四) 事件绑定 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在WPF中 ...

  6. iOS开发系列--打造自己的“美图秀秀”

    --绘图与滤镜全面解析 概述 在iOS中可以很容易的开发出绚丽的界面效果,一方面得益于成功系统的设计,另一方面得益于它强大的开发框架.今天我们将围绕iOS中两大图形.图像绘图框架进行介绍:Quartz ...

  7. DB1:数据库的创建和文件的修改

    在SQL Server中,使用Create Database创建数据库,使用Alter Database命令,能够修改数据库的数据文件和日志文件. 一,创建数据库 1,在创建数据库时,最佳实践是: 创 ...

  8. UWP开发之Mvvmlight实践九:基于MVVM的项目架构分享

    在前几章介绍了不少MVVM以及Mvvmlight实例,那实际企业开发中将以那种架构开发比较好?怎样分层开发才能节省成本? 本文特别分享实际企业项目开发中使用过的项目架构,欢迎参照使用!有不好的地方欢迎 ...

  9. AFNetworking 3.0 源码解读 总结(干货)(下)

    承接上一篇AFNetworking 3.0 源码解读 总结(干货)(上) 21.网络服务类型NSURLRequestNetworkServiceType 示例代码: typedef NS_ENUM(N ...

  10. WebApi基于Token和签名的验证

    最近一段时间在学习WebApi,涉及到验证部分的一些知识觉得自己并不是太懂,所以来博客园看了几篇博文,发现一篇讲的特别好的,读了几遍茅塞顿开(都闪开,我要装逼了),刚开始读有些地方不理解,所以想了很久 ...