内容

首先我们创建一个名为“Acme.PhoneBook”的项目。
本文档是指南会同步开发您的项目。
我们建议你在开发之前准备备份下这份初始项目。

因为abpZero是基于abp的基础框架衍生出的所以本文档也是基于ABP的文档作为标准开发的协同开发。abp文档链接

在阅读本文档之前, 建议先运行项目,并了解用户界面。这将帮助您更好地理解此处定义的概念。最好是先看过ABP的文档

解决方案结构(层)SOLUTION STRUCTURE (LAYERS)

当您创建并下载您的项目时,将通过一个解决方案结构如下所示 ︰

该解决方案中包含了6个项目类库
  1. Tests 文件夹中的 Tests类库是一个测试项目包含了单元测试和集成测试。
  2. Migrator Tools文件夹中的是迁移项目。它是一个控制台程序,可以执行数据库迁移。
  3. Application 应用程序项目包含应用程序逻辑 (如业务服务和 Dto)。

  4. Core 核心项目包含领域层及类文件 (如实体和领域服务)。
  5. EntityFramework EntityFramework 项目包含您 DbContext、 仓储实现、 数据库迁移和其他 EntityFramework 特定概念。
  6. Web 项目包含了表现层 (如: JavaScripts,Css,以及视图文件)

  7. WebApi 项目包含了WebApi控制器,生成动态API。配合Swagger Ui生成可视化文件

Application 应用层说明

Asp.netZero 中包含了4个应用程序

  • 基于MVC制作的前端:这个可以用来创建一个公共的web站点或者其他程序。
  • 基于Angular制作的单页面后台管理:需要使用用户名和密码才能登陆的应用程序。
  • MVC搭建的多页面后台管理:功能和Angular的单页面功能基本一致,但是使用的技术为MVC和JQuery。
  • 迁移:整个基于Codefirst来的,运行可以迁移数据库

所以整个Application是基于两个不同的体系结构制作的(SPA和MPA),你可以按照你自己的喜欢打造属于自己的后台管理。你可以安全的从项目中删除MPA或者SPA不会发生冲突。

多租户

多租户的使用可以轻松的构建Saas(Soft as a Service)翻译为:“软件即服务”,高大上的称呼为“云服务”。
使用此技术我们可以部署单个项目网站和单个/多个数据库向多个客户提供服务。每个租户将有自己的角色、用户和设置。

Asp.NetZero的代码库是默认开启了多租户貌似。如果我们正在开发单租户项目,可以通过配置来禁用该功能。

  1. 当您禁用它的时候,所有的多租户的功能将隐藏以及不可用。
  2. 如果你禁用了多租户,将开启单租户,租户名称为“Default”。

启用多租户的话会有两种类型的视角模式存在于项目中

  • Host: 管理租户和系统(俗称上帝视角)
  • Tenant(租户): 使用程序功能的租户。

ASP.NET Zero使用了 ABP的 (ASP.NET 样板)“data filters”数据筛选器。
所以,当你正确的使用了"data filters"筛选器的接口来创建一个多租户应用的话,ABP框架会自动隔离掉 租户的数据信息。

ABPZERO介绍的更多相关文章

  1. 1、ABPZero系列教程之拼多多卖家工具 前言

    此系列文章围绕着拼多多卖家工具来介绍ABPZero的使用,内容包括手机登录.手机注册.拼团提醒.微信公众号绑定帐号.有拼团发送消息到微信公众号(只要关注过微信公众号并已绑定系统帐号). 学习此系列必备 ...

  2. 番外篇--Moddule Zero介绍

    1.1 ABPZero - 概述 介绍 微软ASP.NET身份框架 权限 会话 角色管理 默认角色 用户管理 多租户 设置管理 审计日志 1.1.1 介绍 Modulde Zero实现了ASP.NET ...

  3. 在ABPZERO中,扩展实体的方法。

    内容 介绍 扩展的抽象实体 将新属性添加给用户 添加迁移 在界面上显示地址 在用户编辑/添加功能中添加地址 扩展的非抽象类实体 获得版本的派生实体 添加迁移 在界面上添加价格 在创建/编辑版本功能中加 ...

  4. CSS3 background-image背景图片相关介绍

    这里将会介绍如何通过background-image设置背景图片,以及背景图片的平铺.拉伸.偏移.设置大小等操作. 1. 背景图片样式分类 CSS中设置元素背景图片及其背景图片样式的属性主要以下几个: ...

  5. MySQL高级知识- MySQL的架构介绍

    [TOC] 1.MySQL 简介 概述 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而 ...

  6. Windows Server 2012 NIC Teaming介绍及注意事项

    Windows Server 2012 NIC Teaming介绍及注意事项 转载自:http://www.it165.net/os/html/201303/4799.html Windows Ser ...

  7. Linux下服务器端开发流程及相关工具介绍(C++)

    去年刚毕业来公司后,做为新人,发现很多东西都没有文档,各种工具和地址都是口口相传的,而且很多时候都是不知道有哪些工具可以使用,所以当时就想把自己接触到的这些东西记录下来,为后来者提供参考,相当于一个路 ...

  8. JavaScript var关键字、变量的状态、异常处理、命名规范等介绍

    本篇主要介绍var关键字.变量的undefined和null状态.异常处理.命名规范. 目录 1. var 关键字:介绍var关键字的使用. 2. 变量的状态:介绍变量的未定义.已定义未赋值.已定义已 ...

  9. HTML DOM 介绍

    本篇主要介绍DOM内容.DOM 节点.节点属性以及获取HTML元素的方法. 目录 1. 介绍 DOM:介绍DOM,以及对DOM分类和功能的说明. 2. DOM 节点:介绍DOM节点分类和节点层次. 3 ...

随机推荐

  1. python常用内置模块

    #持续更新 #在使用内置模块的时候需要导入,例如import abc,则导入abc模块,当然模块也可以自己写,相当于一个类,后面放到类里说,这个因为环境闲置,有些无法执行,只能理解了 #os系统操作 ...

  2. SQL 的各种 join 用法

    作者丨C.L. Moffatt http://www.codeproject.com/Articles/33052/Visual-Representation-of-SQL-Joins I am go ...

  3. Windows7 添加快速启动栏

    解决方案: 1.右击任务栏空白处,选择“工具栏”,单击“新建工具栏”: 2.输入“%userprofile%\AppData\Roaming\Microsoft\Internet Explorer\Q ...

  4. Docker容器学习与分享08

    Docker容器网络 Docker除了默认创建的三种网络外,还可以自定义网络. 首先创建一个bridge类型的网络,使用docker network create命令. [root@promote ~ ...

  5. [python]如何理解uiautomator里面的 child, child_by_text, sibling,及使用场景

    如何理解uiautomator里面的 child, child_by_text, sibling,我们借助android原生的uiautomatorviewer抓取的控件来进行理解 以如下图进行详细讲 ...

  6. Linux解压.tar .tgz .tar.gz .tar.Z等文件

    .tar 解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar是打包,不是压缩!) ---------------------- ...

  7. 百度地图POI数据爬取,突破百度地图API爬取数目“400条“的限制11。

    1.POI爬取方法说明 1.1AK申请 登录百度账号,在百度地图开发者平台的API控制台申请一个服务端的ak,主要用到的是Place API.检校方式可设置成IP白名单,IP直接设置成了0.0.0.0 ...

  8. ubuntu 视频播放问题

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/chang_xing/article/details/30976659                ...

  9. 【转】网络安全——一图看懂HTTPS建立过程

    阅读目录 准备工作(对应图中prepare1234) 发起链接 最后 关于网络安全加密的介绍可以看之前文章: 1. 网络安全——数据的加密与签名,RSA介绍2. Base64编码.MD5.SHA1-S ...

  10. MetaMask/provider-engine-1

    https://github.com/MetaMask/provider-engine 在学习这个之前应该先看一下什么是zero-client,MetaMask/zero-client Web3 Pr ...