内容

首先我们创建一个名为“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. js拼接table查询信息部分

    其一: $("#datagrid").empty(); var a=0; <order-rows> a++; $("#datagrid").appe ...

  2. android打开存储卡(TF卡\SD卡)中的sqlite文件

    android的SDK直接支持sqlite3的API.   打开SD卡上面的sqlite数据库,不需要SQLiteOpenHelper的继承类.只需要,SQLiteDatabase中的一些静态方法.如 ...

  3. 大话存储 3 - 七种磁盘RAID技术

    RAID技术 Redundant Array of Independent Disks 由独立的磁盘组成的具有冗余特性的阵列. 有两个特性: 阵列:需要很多磁盘来组成 冗余:允许某块磁盘损坏之后,数据 ...

  4. DFS服务待书写

    https://www.cnblogs.com/xfan1982/p/4120583.html 安装AD域控制 https://www.cnblogs.com/wanggege/p/4605678.h ...

  5. 1.1环境的准备(一)之Python解释器的安装

    目录: 1.Python-解释器的下载 2.Python-解释器的安装 3.Python-解释器的测试 4.Python的环境变量的配置 (一)Python解释器的安装: 1.官网:https://w ...

  6. Java多线程学习笔记之三内存屏障与Java内存模型

    基本内存屏障 处理器支持那种内存重排序,就会提供能够禁止相应内存重排序的的指令,这些指令就被成为基本内存屏障:StroeLoad屏障.StroeLoad屏障.LoadLoad屏障.LoadStore屏 ...

  7. 包(package),继承

    1.包(package) 1)为何用包 包用于管理程序中的类,主要解决类同名问题(它的唯一性),也可以看作是现实生活中的目录. 2)作用 —可以解决包的同名问题. —可以更好地管理类,有了包的概念,使 ...

  8. str操作方法

    s = 'dsj,fhk,je,f' # s1 = s.split(',') # print(s1) s = 'aleX leNb' s1 = s.strip() print(s1) s2 = s[2 ...

  9. jumperserver docker部署

    最近在考虑 系统安全问题,jumperserver 用docker 部署比较简单1. 安装redis2.安装mariadb create database jumpserver charset='ut ...

  10. (转)CloudStack 安装及使用过程中常见问题汇总

    CloudStack 安装及使用过程中常见问题汇总             在做工程项目中对CloudStack 安装及使用过程中常见的几个问题及如何解决做一个总结.   1.Windows XP虚拟 ...