内容

首先我们创建一个名为“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. mysql的又一个让人捉摸不透的bug?

    这次就不说很多没有写博客了,因为前几天已经写过了.\^o^/ 昨天我们刚讨论了关于自动化运维工作的实现方式,如果批量执行,中间出错怎么办?突然有人提出mysql支持--force,可以跳过出错继续执行 ...

  2. python之demo2----改编自python官方提供的turtle_yinyang.py画阴阳的demo

    """ 执行 python -m turtledemo 命令查看系统内置demo的源码 绘制:需要通过import turtle引入绘制图形库turtle库 改编自pyt ...

  3. EntityFramework Code-First 简易教程(三)-------数据库初始化

    现在我们来学习,当数据库初始化的时候,Code First怎样设置数据库的名字. 下面的图显示了数据库初始化的工作流程,根据传入给context基类的构造函数的参数来初始化: 根据上面的图,conte ...

  4. C# post json 匿名类 序列化

    //第一步 建立HTTP请求对象 var httpWebRequest = (HttpWebRequest)WebRequest.Create(apiURL); httpWebRequest.Cont ...

  5. SmartUpload相关类的说明

    ㈠ File类 这个类包装了一个上传文件的所有信息.通过它,可以得到上传文件的文件名.文件大小.扩展名.文件数据等信息. File类主要提供以下方法: 1.saveAs作用:将文件换名另存. 原型: ...

  6. 项目管理心经——正确的使用Microsoft Project

    第一步:填写task items 第二步:定义个性化日历(Tools-->Change working time) 第二步:填写task duration 第三步:填写前置任务 第四步:自动生成 ...

  7. October 28th, 2017 Week 43rd Saturday

    All I ever wanted was a single thing worth fighting for. 我想要的只不过是一件能让我奋不顾身的事业. Stop complaining the ...

  8. 模拟prompt

    <!DOCTYPE html"> <meta http-equiv="Content-Type" content="text/html; ch ...

  9. sed 指定行范围匹配(转)

    sed -n '5,10{/pattern/p}' file sed是一个非交互性性文本编辑器,它编辑文件或标准输入 导出的文件拷贝.标准输入可能是来自键盘.文件重定向.字符串或变量,或者是一个管道文 ...

  10. jquery实现返回页面顶部功能。

    <p id="back-to-top"> <span></span> </p> <script type="text ...