Skip to content

Libreria base que contiene las abstracciones para el desarrollo del SDK de CodeDesignPlus que se usara en los microservicios.

License

Notifications You must be signed in to change notification settings

AlexanderVP31/CodeDesignPlus.Core

 
 

Repository files navigation

Build status Bugs Code Smells Coverage Duplicated Lines (%) Lines of Code Maintainability Rating Quality Gate Status Reliability Rating Technical Debt Vulnerabilities Security Rating


Logo

CodeDesignPlus.Core

Librería que contiene las abstracciones base del SDK
Explore the docs »

Report Bug · Request Feature

Table of Contents

About The Project

Logo

Este proyecto tiene como objetivo principal proveer las interfaces y modelos base para las diferentes librerías que componen el SDK de CodeDesignPlus para administrar las diferentes características de los microservicios que se están desarrollando en el curso que encontraras en el siguiente enlace:

Curso Microservicios:
https://www.youtube.com/playlist?list=PLiNuKK_lURW83zP828ACAHev-RZWOop-3

Built With

Getting Started

Para obtener una copia local en funcionamiento siga los siguientes pasos:

  1. Clone este repositorio en su computador.
  2. Para abrir el proyecto

Prerequisites

Para restaurar los paquetes nuget puede ejecutar el siguiente comando solo si no esta usando Visual Studio Community

  • powershell
dotnet restore .\CodeDesignPlus.Core.sln

Installation

  1. Clone the repo
git clone https://github.com/codedesignplus/CodeDesignPlus.Core.git
  1. Retore Packages
dotnet restore .\CodeDesignPlus.Core.sln

Usage

En este momento no contamos con ejemplos de implementación de la librería por el momento, sin embargo, puede ver los códigos creados en las pruebas unitarias del proyecto para ver su funcionamiento e implementación.

/// <summary>
/// Valida la paginación a partir de un metodo de extensión para EF Core
/// </summary>
[Fact]
public async Task Pager_ArgumentsDefault_StateObjectStandardWithDataDB()
{
    // Arrange
    var options = new DbContextOptionsBuilder<FakeContext>()
        .UseInMemoryDatabase(databaseName: "FakeDbMemory")
        .Options;

    var fakeContext = new FakeContext(options);
    var entities = new List<FakeEntity>();

    for (int i = 0; i < 500; i++)
    {
        entities.Add(new FakeEntity()
        {
            Name = $"Fake - {i}",
            State = true,
            IdUserCreator = Guid.NewGuid().ToString("D"),
            DateCreated = DateTime.Now,
        });
    }
    await fakeContext.FakeEntity.AddRangeAsync(entities);
    await fakeContext.SaveChangesAsync();

    // Act
    var pager = await fakeContext.FakeEntity.Where(x => x.State).ToPageAsync(CURRENT_PAGE, PAGE_SIZE);

    // Assert
    this.AssertPager(TOTAL_ITEMS, CURRENT_PAGE, PAGE_SIZE, MAX_PAGES, pager, entities);
}

Roadmap

Consulte issues para obtener una lista de las funciones propuestas y problemas conocidos.

Contributing

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b features/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Contact

CodeDesignPlus - @CodeDesignPlus - [email protected]

Project Link: CodeDesignPlus.Core

Acknowledgements

Queremos agradecer a cada uno de los miembros de la comunidad latina de desarrollo en la cual participamos llevando contenido día a día para así seguir creciendo en conjunto.

About

Libreria base que contiene las abstracciones para el desarrollo del SDK de CodeDesignPlus que se usara en los microservicios.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 98.3%
  • PowerShell 1.7%