El proyecto fue desarrollado en .net 6 el code coverage es de 80%
Las bibliotecas utilizadas son:
- AutoMapper
- EntityFrameworkCore
- EntityFrameworkCore.SqlServer
- EntityFrameworkCore.Tools
- Swagger
- Newtonsoft
- Moq
- xUnit
-
N-CAPAS
-
Patrón de Repositorio
-
Denpendency Injection
-
MVC
-
RestApi
-
Unit Test
Para poder ejecutar el proyecto se debe de cambiar la cadena de conexion que se encuentra en el appsettings.Development.json
con el key de SqlServer
y colocarle la cadena de conexión correspondiente.
Luego proceder a ejecutar el proyecto este va a correr las migraciones automaticamente y va a poblar la base de datos con los datos con 12 paises incluyendo Republica Dominicana
y Guatemala
.
El proyecto cuenta con swagger para poder hacer las peticiones, las pruebas y para generar un token se deben utilizar las credenciales para el usuario: test@domain.com
y contraseña: abc123
.
-
📁
BusinessLayer
: Es una capa del proyecto que contiene la logica del proyecto.-
📁
Core
: Es el que tiene la logica base.- 📁
Repositories
: Contiene los repositorios del proyecto, especificamente el patron de repositorio.- cs
BaseRepository.cs
- cs
IBaseRepository.cs
- cs
- 📁
-
📁
Services
: Son los que contienen los servicios de la aplicación- 📁
Auth
- cs
AuthService.cs
- cs
IAuthService.cs
- cs
- 📁
Countries
- cs
CountryService.cs
- cs
ICountryService.cs
- cs
- 📁
States
- cs
IStateService.cs
- cs
StateService.cs
- cs
- 📁
-
csproj
BusinessLayer.csproj
-
cs
Usings.cs
: Contiene los globals usings de esta capa.
-
-
📁
DataLayer
: Contiene la capa que maneja el acceso a los datos.- 📁
Core
: Contiene los modelos base.- cs
BaseDtoModel.cs
: es la clase base para los DTO. - cs
BaseEditModel.cs
: Es la clase base para editar registros. - cs
BaseInputModel.cs
: Es la clase base para agregar. - cs
BaseModel.cs
: Representa la clase base de los modelos. - cs
IBaseModel.cs
: Contiene las firmas de las propiedades base.
- cs
- 📁
Mappings
: Contiene los mappers y la configuracion de estos.- 📁
Mappers
- 📁
Countries
- cs
CountryEditMapper.cs
- cs
CountryInputMapper.cs
- cs
CountryMapper.cs
- cs
- 📁
States
- cs
StateEditMapper.cs
- cs
StateInputMapper.cs
- cs
StateMapper.cs
- cs
- 📁
- 📁
Profiles
- cs
CommonProfile.cs
- cs
- 📁
- 📁
Migrations
: contiene las migraciones del proyecto - 📁
Models
:Contiene los modelos del proyecto- 📁
Countries
- cs
Country.cs
- cs
CountryEFConfiguration.cs
- cs
- 📁
States
- cs
State.cs
- cs
StateEFConfiguration.cs
- cs
- 📁
- 📁
Persistence
: Contiene la configuracion del DbContext y todo lo relacionado a este.- 📁
Core
- cs
BaseEFConfiguration.cs
- cs
- cs
ApplicationDbContext.cs
- 📁
- 📁
Utils
: Contiene objetos que son usados para configuraciones.- 📁
Configs
- 📁
Auths
- cs
AuthConfig.cs
- cs
JwtConfig.cs
- cs
- 📁
- 📁
Paginations
- cs
Paginate.cs
- cs
PaginationResult.cs
- cs
- 📁
Profiles
- cs
ProfileBase.cs
- cs
- 📁
- 📁
DataLayer
- csproj
DataLayer.csproj
- cs
Usings.cs
- 📁
-
📁
Tsc.Api
: Contiene la capa web con los controladores.- 📁
Configurations
: Contiene los metodos de extension utilizados en esta capa.- cs
ProgramConfiguration.cs
: Contains the github actions
- cs
- 📁
Controllers
: Contiene los controladores del proyecto- 📁
Auth
- cs
AuthController.cs
- cs
- 📁
Core
: Contiene los controladores con las operaciones basicas.- cs
CoreController.cs
- cs
ICoreController.cs
- cs
- 📁
Countries
- cs
CountriesController.cs
- cs
- 📁
State
- cs
StatesController.cs
- cs
- 📁
- cs
Usings.cs
: Contiene los using globales de esta capa.
- 📁
Si desea contribuir, puede crear una rama en el repositorio y enviar una solicitud de extracción. Recuerde crear excelentes pruebas unitarias y actualizaciones de documentación.
Recuerda usar esta estructura:
feature/[name]
fix/[name]
bug/[name]
Si tienes una incidencia o un problema con la biblioteca puedes reportarlo en el issues