├── .gitattributes ├── .gitignore ├── Application ├── Application.csproj ├── Dtos │ ├── Account │ │ ├── AssignRolesDto.cs │ │ ├── AuthResponse.cs │ │ ├── Login.cs │ │ ├── RefreshToken.cs │ │ ├── RevokeToken.cs │ │ └── SignUp.cs │ ├── Email │ │ └── EmailRequest.cs │ ├── ProductDto.cs │ ├── ProductDtoDetails.cs │ └── WithDrawProducts.cs ├── GlobalUsings.cs └── Interfaces │ ├── Authentication │ └── IAuthResponse.cs │ ├── Content │ ├── Brands │ │ ├── IBrand.cs │ │ └── IBrandRepo.cs │ ├── Categories │ │ └── ICategory.cs │ └── Products │ │ └── IProduct.cs │ └── Email │ └── IEmailService.cs ├── CleanaArchitecture1.sln ├── CleanaArchitecture1 ├── CleanaArchitecture1.csproj ├── Controllers │ ├── Authentication │ │ └── AuthController.cs │ └── Content │ │ ├── BrandController.cs │ │ ├── CategoryController.cs │ │ └── ProductController.cs ├── Program.cs ├── Properties │ └── launchSettings.json ├── appsettings.Development.json └── appsettings.json ├── Domain ├── Domain.csproj ├── Models │ ├── Brand.cs │ ├── Category.cs │ └── Product.cs └── Settings │ ├── JWT.cs │ └── MailSettings.cs ├── Infrastructure ├── Content │ ├── Data │ │ └── AppDbContext.cs │ └── Services │ │ ├── BrandService.cs │ │ ├── CategoryService.cs │ │ └── ProductService.cs ├── Identity │ ├── Data │ │ └── AppIdentityContext.cs │ ├── Enums │ │ └── Roles.cs │ ├── Models │ │ └── AppUser.cs │ ├── Seeds │ │ ├── DefaultRoles.cs │ │ └── DefaultUsers.cs │ └── Services │ │ └── AuthResponseService.cs ├── Infrastructure.csproj ├── Migrations │ ├── 20221129213444_clean1.Designer.cs │ ├── 20221129213444_clean1.cs │ ├── 20221210155358_arch1.Designer.cs │ ├── 20221210155358_arch1.cs │ ├── 20221218160601_addnewentity.Designer.cs │ ├── 20221218160601_addnewentity.cs │ ├── AppDbContextModelSnapshot.cs │ └── AppIdentity │ │ ├── 20221213012302_iden1.Designer.cs │ │ ├── 20221213012302_iden1.cs │ │ └── AppIdentityContextModelSnapshot.cs └── Services │ └── EmailService.cs └── README.md /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/.gitattributes -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/.gitignore -------------------------------------------------------------------------------- /Application/Application.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Application/Application.csproj -------------------------------------------------------------------------------- /Application/Dtos/Account/AssignRolesDto.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Application/Dtos/Account/AssignRolesDto.cs -------------------------------------------------------------------------------- /Application/Dtos/Account/AuthResponse.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Application/Dtos/Account/AuthResponse.cs -------------------------------------------------------------------------------- /Application/Dtos/Account/Login.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Application/Dtos/Account/Login.cs -------------------------------------------------------------------------------- /Application/Dtos/Account/RefreshToken.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Application/Dtos/Account/RefreshToken.cs -------------------------------------------------------------------------------- /Application/Dtos/Account/RevokeToken.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Application/Dtos/Account/RevokeToken.cs -------------------------------------------------------------------------------- /Application/Dtos/Account/SignUp.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Application/Dtos/Account/SignUp.cs -------------------------------------------------------------------------------- /Application/Dtos/Email/EmailRequest.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Application/Dtos/Email/EmailRequest.cs -------------------------------------------------------------------------------- /Application/Dtos/ProductDto.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Application/Dtos/ProductDto.cs -------------------------------------------------------------------------------- /Application/Dtos/ProductDtoDetails.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Application/Dtos/ProductDtoDetails.cs -------------------------------------------------------------------------------- /Application/Dtos/WithDrawProducts.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Application/Dtos/WithDrawProducts.cs -------------------------------------------------------------------------------- /Application/GlobalUsings.cs: -------------------------------------------------------------------------------- 1 | global using Domain; -------------------------------------------------------------------------------- /Application/Interfaces/Authentication/IAuthResponse.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Application/Interfaces/Authentication/IAuthResponse.cs -------------------------------------------------------------------------------- /Application/Interfaces/Content/Brands/IBrand.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Application/Interfaces/Content/Brands/IBrand.cs -------------------------------------------------------------------------------- /Application/Interfaces/Content/Brands/IBrandRepo.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Application/Interfaces/Content/Brands/IBrandRepo.cs -------------------------------------------------------------------------------- /Application/Interfaces/Content/Categories/ICategory.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Application/Interfaces/Content/Categories/ICategory.cs -------------------------------------------------------------------------------- /Application/Interfaces/Content/Products/IProduct.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Application/Interfaces/Content/Products/IProduct.cs -------------------------------------------------------------------------------- /Application/Interfaces/Email/IEmailService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Application/Interfaces/Email/IEmailService.cs -------------------------------------------------------------------------------- /CleanaArchitecture1.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/CleanaArchitecture1.sln -------------------------------------------------------------------------------- /CleanaArchitecture1/CleanaArchitecture1.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/CleanaArchitecture1/CleanaArchitecture1.csproj -------------------------------------------------------------------------------- /CleanaArchitecture1/Controllers/Authentication/AuthController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/CleanaArchitecture1/Controllers/Authentication/AuthController.cs -------------------------------------------------------------------------------- /CleanaArchitecture1/Controllers/Content/BrandController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/CleanaArchitecture1/Controllers/Content/BrandController.cs -------------------------------------------------------------------------------- /CleanaArchitecture1/Controllers/Content/CategoryController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/CleanaArchitecture1/Controllers/Content/CategoryController.cs -------------------------------------------------------------------------------- /CleanaArchitecture1/Controllers/Content/ProductController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/CleanaArchitecture1/Controllers/Content/ProductController.cs -------------------------------------------------------------------------------- /CleanaArchitecture1/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/CleanaArchitecture1/Program.cs -------------------------------------------------------------------------------- /CleanaArchitecture1/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/CleanaArchitecture1/Properties/launchSettings.json -------------------------------------------------------------------------------- /CleanaArchitecture1/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/CleanaArchitecture1/appsettings.Development.json -------------------------------------------------------------------------------- /CleanaArchitecture1/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/CleanaArchitecture1/appsettings.json -------------------------------------------------------------------------------- /Domain/Domain.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Domain/Domain.csproj -------------------------------------------------------------------------------- /Domain/Models/Brand.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Domain/Models/Brand.cs -------------------------------------------------------------------------------- /Domain/Models/Category.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Domain/Models/Category.cs -------------------------------------------------------------------------------- /Domain/Models/Product.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Domain/Models/Product.cs -------------------------------------------------------------------------------- /Domain/Settings/JWT.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Domain/Settings/JWT.cs -------------------------------------------------------------------------------- /Domain/Settings/MailSettings.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Domain/Settings/MailSettings.cs -------------------------------------------------------------------------------- /Infrastructure/Content/Data/AppDbContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Content/Data/AppDbContext.cs -------------------------------------------------------------------------------- /Infrastructure/Content/Services/BrandService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Content/Services/BrandService.cs -------------------------------------------------------------------------------- /Infrastructure/Content/Services/CategoryService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Content/Services/CategoryService.cs -------------------------------------------------------------------------------- /Infrastructure/Content/Services/ProductService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Content/Services/ProductService.cs -------------------------------------------------------------------------------- /Infrastructure/Identity/Data/AppIdentityContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Identity/Data/AppIdentityContext.cs -------------------------------------------------------------------------------- /Infrastructure/Identity/Enums/Roles.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Identity/Enums/Roles.cs -------------------------------------------------------------------------------- /Infrastructure/Identity/Models/AppUser.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Identity/Models/AppUser.cs -------------------------------------------------------------------------------- /Infrastructure/Identity/Seeds/DefaultRoles.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Identity/Seeds/DefaultRoles.cs -------------------------------------------------------------------------------- /Infrastructure/Identity/Seeds/DefaultUsers.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Identity/Seeds/DefaultUsers.cs -------------------------------------------------------------------------------- /Infrastructure/Identity/Services/AuthResponseService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Identity/Services/AuthResponseService.cs -------------------------------------------------------------------------------- /Infrastructure/Infrastructure.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Infrastructure.csproj -------------------------------------------------------------------------------- /Infrastructure/Migrations/20221129213444_clean1.Designer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Migrations/20221129213444_clean1.Designer.cs -------------------------------------------------------------------------------- /Infrastructure/Migrations/20221129213444_clean1.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Migrations/20221129213444_clean1.cs -------------------------------------------------------------------------------- /Infrastructure/Migrations/20221210155358_arch1.Designer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Migrations/20221210155358_arch1.Designer.cs -------------------------------------------------------------------------------- /Infrastructure/Migrations/20221210155358_arch1.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Migrations/20221210155358_arch1.cs -------------------------------------------------------------------------------- /Infrastructure/Migrations/20221218160601_addnewentity.Designer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Migrations/20221218160601_addnewentity.Designer.cs -------------------------------------------------------------------------------- /Infrastructure/Migrations/20221218160601_addnewentity.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Migrations/20221218160601_addnewentity.cs -------------------------------------------------------------------------------- /Infrastructure/Migrations/AppDbContextModelSnapshot.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Migrations/AppDbContextModelSnapshot.cs -------------------------------------------------------------------------------- /Infrastructure/Migrations/AppIdentity/20221213012302_iden1.Designer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Migrations/AppIdentity/20221213012302_iden1.Designer.cs -------------------------------------------------------------------------------- /Infrastructure/Migrations/AppIdentity/20221213012302_iden1.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Migrations/AppIdentity/20221213012302_iden1.cs -------------------------------------------------------------------------------- /Infrastructure/Migrations/AppIdentity/AppIdentityContextModelSnapshot.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Migrations/AppIdentity/AppIdentityContextModelSnapshot.cs -------------------------------------------------------------------------------- /Infrastructure/Services/EmailService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/Infrastructure/Services/EmailService.cs -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haithamabass/WebApi_CleanArchitecture/HEAD/README.md --------------------------------------------------------------------------------