三、项目结构讲解

这篇文章我将讲解海绵清单的项目结构。在讲解项目结构前,我要先了解一下在项目中使用的 ORM 框架。在这个项目里所使用的 ORM 框架是 Entity Framework 。 Entity Framework 是微软以 ADO.NET 为基础所发展出来的对象关系对应解决方案。该框架曾经为 .NET Framework 的一部分,但 version 6 之后从 .NET Framework 分离出来。 Entity Framework 主要包含如下 6 部分:

  1. EDM(实体数据模型): EDM包含三个主要部分——概念模型,映射和存储模型:
  • 概念模型(entity): 概念模型包含了模型类和它们之间的关系。 这将是独立于数据库表设计。
  • 存储模型(data): 存储模型是数据库设计模型,包括表、视图、存储过程、以及它们之间的关系和钥匙。
  • 映射(mapping): 映射由概念模型如何映射到存储模型的信息组成。
  1. LINQ To Entity(L2E): L2E是一种的查询实体对象的语言, 它返回在概念模型中定义的实体。
  2. Entity SQL: Entity SQL是一个类似于L2E的查询语言。 然而,它比L2E更加复杂。
  3. Object Services(对象服务):对象服务是访问数据库中的数据并返回数据的主要入口点。它负责数据实例化,把Entity Client Data Provider(下一层)的数据转换成实体对象。
  4. Entity Client Data Provider:主要职责是将L2E或Entity Sql转换成数据库可以识别的Sql查询语句,它通过ADO.Net Data Provider向数据库发送或者索取数据。
  5. ADO.Net Data Provider:使用标准的Ado.net与数据库通信。

零、项目结构

通过前面的讲述,你大概对 Entity Framework 有了简单的了解,到目前为止各位读者只需了解这些。在这个专栏后面的文章中我将在使用到 Entity Framework 的时候进行有针对性的讲解。下面我们来看一下项目的结构。项目一共分为 4 个类库和 1 个 Web 项目(如下图)。
在这里插入图片描述

  1. SpongeList.Api

SpongeList.Api 是一个 Web 项目,里面包含了前端页面和 APP 所需要调用的 API 。在 SpongeList.Api 中我们不仅要编写 API ,还要对所有对 API 的调用请求进行验证以及错误处理。

  1. SpongeList.BLL

SpongeList.BLL 主要是用于处理业务逻辑的,比如分页查询、部分数据写入缓存以及将 SpongeList.Model 返回的结果转化为 SpongeList.Api 可使用的数据等。

  1. SpongeList.DB

SpongeList.DB 这一层显而易见,我们用它来对数据库操作。在这一层中我们会使用到 Entity Framework 对数据库进行操作。

  1. SpongeList.Model

SpongeList.Model 就很简单了,主要是数据库表模型和映射,并且在这一层我们将配置验证数据有效性。

  1. SpongeList.Tools

SpongeList.Tools 是一个辅助层,其中包含了我们项目所需要的所有工具类和方法。

一、预告

下一篇文章我将讲解 SpongeList.DB 和 SpongeList.Model 两层的配置和使用。

原文地址:https://www.cnblogs.com/gangzhucoll/p/12778103.html