Making it simple - Clean architecture - Crud Users & Authentication .Net 7.0 - My Nuget PearlCore .ADO.NET .UnitOfWork Mediator
Published: 2023-11-09 17:06:00

https://www.linkedin.com/in/raphael-mendes-br/

https://github.com/raphamendes123/net-core-clean-architecture

Wait - Go / Java Spring Boot / Python / Node.Js

********* API RestFull ********* 

Autentication ( UseCase - Password Crypto JWT ) Crud (PaginatedList) 

Project : Infrastructure / Base / Security / Application / Domain / Repository / Service / Query (option)

PearlCore.Security (My Nuget - by Raphamendes123)
PearlCore.UnitOfWork (My Nuget - by Raphamendes123)
PearlCore.ADO.NET (My Nuget - by Raphamendes123)
PearlCore.FieldValidation (My Nuget - by Raphamendes123)
Mediator
Swagger Document
JwtBearer Authentication
SecretArgon2 - Cryptography Password
AutoMapper
Exception
DependencyInjection
FluentValidation - AbstractValidator (Exception standard)
DomainCore - UseCase (ex. ValidationCore) (Exception standard)
Policy (administrator / UserStandard)
CultureInfo
Cors

****************** Organization Project ****************** 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e55lbax6j1rsg5lg0wzy.png)

1) Application

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pbj61e5weh9t4ac53ghe.png)

2) Base

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j0c4oz88rkkkerrhcrt1.png)

3) Domain

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3zxfurp3ol2evcwhnbt6.png)

4) Infrastructure

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/deac8j9tjk0njhm2ur1s.png)

5) Query

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xg48pejyk32p68dlfdn3.png)

6) Repository

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lyvd5oyicyk03tni13hw.png)

7) Security

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bk4vq7w8bihxyx29pj7e.png)

8) Service

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wrrnalnspp5mhbtexon4.png)





9) WebApi

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fkkei3e3tryghon0jii1.png)

****************** CODE MODEL - Create User ************************

1) Controller 
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x73xkfzvddiu0adjlmcv.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/d0sq5ockqg8oqijs91qt.png)

2) Handler Expection - Unit Of Work | Command

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jii0kps4swh6tcgmi7hp.png)



3) Validation - DomainCore & FluentValidation 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hivbbl0nxofj5syie9r9.png)

4) Service

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dmv12lnnvhu9rpmvvl9b.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zlrp2g6ll3q3e3uofxr2.png)

5) Repository (My Nuget PearlCore.ADO.NET & PearlCore.UnitOfWork)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kq6hiyd3fbgc8sc9cbhl.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/c9tlqbj7uyyrmbmfxp2z.png)

6) Query 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zofow9bb3nnczr8ii6at.png)

7) Swagger

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1dyln9lwqfq3u6teqrqf.png)


****************** WebApi - Program  ************************

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/db970pc9bktwhgpscenr.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v1gi5mjg0t5mjbehwtv1.png)



![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4pgm01s5uzsqidz0t206.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0tcip2e3i5re17omq378.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ejyudr47d4kt7qenjmrc.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/21n4t8dwoarespxhsx7k.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dlowx18ymtl2u0wioo3f.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b2sud6ey8z7yiavq10f5.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kgdw0l25s4jk04f3mw6n.png)


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0up3dyhgsreztqusbzf6.png)