Patrón Repositorio(存储库模式)和 Unidad de Trabajo(工作单元)en ASP.NET Core WebApi 3.0
自然需要使用软件应用程序来获取数据中的 CRUD 操作(Crear、Leer、Actualizar、Eliminar)数据,以获取基本数据、存档或用户信息系统的数据。保存信息的常用方法。
在其他地方创建新的数据保存要求,在新的存档中创建新的文件,在数据基础上创建表格,在其他情况下创建新的数据要求,在各种服务中进行交互操作,在网络或其他应用程序中进行操作服务不属于我们的一般管理。
Para ambos casos podemos hacer uso del patrón repositorio(存储库模式)和 una unidad de trabajo(工作单元),但是,什么是 el patrón repositorio?
守护者存储库包含单独的数据恢复逻辑和指定商业逻辑实体模型,该模型是实际行动的逻辑,允许独立的商业逻辑海洋独立于数据的来源,并包含数据的起源,并在pocas中Palabras un repositorio media entre el dominio y las capas de mapeo de datos, actuando como una colección de objetos de dominio en memoria (M. Fowler), ahora bien, ¿qué es el patrón unidad de trabajo?
该连接集中在数据实现的基础上,以便在交易期间成功完成所有任务,使用数据和恢复 Commit() 的交易,不会调用或存在逻辑不一致的情况。
您可以使用通用存储库和统一的专辑项目和艺术家的工作应用程序来连续使用 sql server 内存中的数据。通过使用前部项目,他实现了对存储库代码的适应性调整,以实现项目的主要基础设施和应用程序的整体规划、分离服务、设计组件。项目。
在 Visual Studio 2019 预览版中创建一个白色解决方案的项目,创建 3 个解决方案和一个聚合项目,作为 WebApi 参考的项目,并与所有数据、实体参考的控制器进行竞争模型、创建模型和项目 WebApi 的场景是通过 WebApi 获取的,可以从多个组件中获取数据,数据访问可以包含在通用存储库中的中间数据基础信息,并影响中间数据基础工会联合体。项目实体和数据访问属于 .NET Standard 类别的图书馆。 La Organización del Proyecto quedaría de la siguiente manera:
在创建 DataAccess 类的项目中,实现了通用存储库和统一工作接口接口,并使用了依赖项的操作,因此无需修改依赖项的前部操作。 NET 核心。
Creamos la unidad de trabajo, su respectiva Interface y Clase.
UnitOfWork 使用与实体相关的数据上下文,没有任何参考项目。
Luego crearemos el repositorio genérico。
请注意传统的数据上下文属性和存储库构造函数,以实现 IUnitOfWork 类型的属性,并在数据基础上集中操作。
在查看和创建选项的中心,使用 GetAsync 的方法可以根据条件,指定模型属性和与其他模型相关的中间属性导航。
如果您对 IoC 反转控制的依赖有疑问,我们可以通过地毯式 llamada 中间件创建类,它可以是任意名称,也可以是 WebApi 项目的具体情况。
使用 WebApi 项目的 Startup 方法ConfigureServices 来控制服务的反转。
可以使用通用存储库和 IUnitOfWork 工作统一界面,在 IGenericRepository 界面中使用该功能,并在该专辑中使用该功能。在 IoC 中,使用存储库方法中的实例进行初始化和顺序处理,使用 GetAsync 存储库方法和 Api Get 方法,注意 3 个参数:参数1 条件、参数 2 与模型属性和参数相关的命令 3 与其他模型和 Artista 的关系。 Api 创建方法使用 CreateAsync 和 json 格式的序列化模型和 HTTP Post 格式创建存储库。
最后,我们要介绍一下该项目的功能,请使用 PostMan 来实现 HTTP 请求,并使用我们的 Api 方法。
通过 llamada HTTP 进行编译、执行和操作 获取方法 获取 WebApi 获取与艺术家模型相关的专辑列表。
使用 api 方法的功能创建包含专辑属性的环境和 json 对象,并且无需在 PostMan 上使用 HTTP Post 进行请求。
新对象需要更正,请在专辑列表中了解新注册的存在情况。
请注意执行正确功能,并使用赞助人存储库和统一的工作人员。
使用守护者存储库的好处包括集中化逻辑和数据,支持统一的设计和灵活的架构,以适应医疗的发展和通用应用程序的设计。
与个人工作人员一起使用个人工作人员来减少大量依赖关系,以便在数据基础上使用联合工作人员,并且可以使用与依赖关系相关的工作人员的上下文工作人员不需要在任何情况下创建模型存储库,只要单独访问工作统一的存储库,就可以创建一个单独的存储库实例,并按照特定的方法创建所需的存储库。
结论
存储库的目的是创建一个抽象的数据存储和访问的存储能力,并为开发人员提供应用程序和数据的存储和便利,以实现自动化的自动化巴萨多·普鲁巴斯。
我们使用 Entity Framework Core 和 Unidad de Trabajo 和 Patrón Repositorio 来实现。
因此,在 Entity Framework Core 参与的日子里,没有任何必要的事情是由劳工联盟赞助的,因为这是一个抽象的基础,但它是由 Entity Framework Core 的劳工联盟所使用的。
存储库和统一工作目标是集中化和统一存储库。
Github 上的存储库链接:
https://github.com/EbarriosCode/RepositoryUnitOfWorkNetCore3
参考:
https://docs.microsoft.com/en-us/dotnet/architecture/microservices/microservice-ddd-cqrs-patterns/infrastruction-persistence-layer-design
https://docs.microsoft.com/en-us/dotnet/architecture/microservices/microservice-ddd-cqrs-patterns/infrastruction-persistence-layer-implementation-entity-framework-core
https://martinfowler.com/eaaCatalog/repository.html
https://www.martinfowler.com/eaaCatalog/unitOfWork.html