- Entities, DataAccess, Business, Core ve WebAPI katmanlarından oluşan araba kiralama projesidir. Bu projede Katmanlı mimari yapısı ve SOLID prensiplerine dikkate alınarak yazılmıştır. JWT entegrasyonu; Transaction, Cache, Validation ve Performance aspect'lerinin implementasyonu gerçekleştirilmiştir.
- Validation için FluentValidation desteği, IoC için ise Autofac desteği eklenmiştir.
- Sql query dosyamı da ekledim isteyen varsa faydalanabilir.
✔ Caching, Transaction ve Performance aspectleri eklendi.
✔ CarManager class'ına ait olan GetAll metoduna Logging aspect'i eklendi.
✔ Car nesnesinin GetAll metodu performance ile test edildi.
✔ Çalıştırılan metodlar log4net.config ile log.json dosyasına yazıldı.
# Clone to repository
$ git clone https://github.com/gulceselim/re-cap-project-with-csharp.git
# Go to the folder you cloned
$ cd re-cap-project-with-csharp
# Install dependencies
$ dotnet restore
Aşağıda görmüş olduğunuz resimdeki işlemi gerçekleştirdikten sonra Ctrl+F5 ile uygulamayı çalıştırabilirsiniz. Daha sonrasında Postman uygulaması aracılığıyla projeye isteklerde bulunabilirsiniz.
🗃 Entities Layer
📂 Concrete
📃 Brand.cs
📃 Car.cs
📃 CarImage.cs
📃 Color.cs
📃 CreditCard.cs
📃 Customer.cs
📃 Rental.cs
📂 DTOs
📃 CarDetailDto.cs
📃 RentalDetailDto.cs
📃 UserForLoginDto.cs
📃 UserForRegisterDto.cs
🗃 Business Layer
📂 Abstract
📃 IAuthService.cs
📃 IBrandService.cs
📃 ICarImageService.cs
📃 ICarService.cs
📃 IColorService.cs
📃 ICreditCardService.cs
📃 ICustomerService.cs
📃 IRentalService.cs
📃 IUserService.cs
📂 BusinessAspect
📂 Autofac
📃 SecuredOperation.cs
📂 Concrete
📃 AuthManager.cs
📃 BrandManager.cs
📃 CarImageManager.cs
📃 CarManager.cs
📃 ColorManager.cs
📃 CreditCardManager.cs
📃 CustomerManager.cs
📃 RentalManager.cs
📃 UserManager.cs
📂 Constants
📃 Messages.cs
📂 DependencyResolvers
📂 Autofac
📃 AutofacBusinessModule.cs
📂 ValidationRules
📂 FluentValidation
📃 BrandValidator.cs
📃 CarValidator.cs
📃 ColorValidator.cs
📃 CustomerValidator.cs
📃 RentalValidator.cs
📃 UserValidator.cs
🗃 Data Access Layer
📂 Abstract
📃 IBrandDal.cs
📃 ICarImageDal.cs
📃 ICarDal.cs
📃 IColorDal.cs
📃 ICreditCardDal.cs
📃 ICustomerDal.cs
📃 IRentalDal.cs
📃 IUserDal.cs
📂 Concrete
📂 EntityFramework
📂 Context
📃 RentACarContext.cs
📂 Repository
📃 EfBrandDal.cs
📃 EfCarImageDal.cs
📃 EfCarDal.cs
📃 EfColorDal.cs
📃 EfCreditCardDal.cs
📃 EfCustomerDal.cs
📃 EfRentalDal.cs
📃 EfUserDal.cs
🗃 Core Layer
📂 Aspect
📂 Autofac
📂 Caching
📃 CacheAspect.cs
📃 CacheRemoveAspect.cs
📂 Expection
📃 ExceptionLogAspect.cs
📂 Logging
📃 LogAspect.cs
📂 Performance
📃 PerformanceAspect.cs
📂 Transaction
📃 TransactionScopeAscpect.cs
📂 Validation
📃 ValidationAspect.cs
📂 CrossCuttingConcerns
📂 Caching
📃 ICacheManager.cs
📂 Microsoft
📃 MemoryCacheManager.cs
📂 Logging
📃 LogDetail.cs
📃 LogDetailWithException.cs
📃 LogParameter.cs
📂 Log4Net
📃 LoggerServiceBase.cs
📃 SerializableLogEvent.cs
📂 Layouts
📃 JsonLayout.cs
📂 Loggers
📃 FileLogger.cs
📂 Validation
📃 ValidationTool.cs
📂 DataAccess
📃 IEntityRepository.cs
📂 EntityFramework
📃 EfEntityRepositoryBase.cs
📂 DependencyResolvers
📃 CoreModule.cs
📂 Entities
📃 IDto.cs
📃 IEntity.cs
📂 Concrete
📃 OperationClaim.cs
📃 User.cs
📃 UserOperationClaim.cs
📂 Extensions
📃 ClaimExtensions.cs
📃 ClaimsPrincipalExtensions.cs
📃 ErrorDetails.cs
📃 ExceptionMiddleware.cs
📃 ExceptionMiddlewareExtensions.cs
📃 ServiceCollectionExtensions.cs
📂 Utilities
📂 Business
📃 BusinessRules.cs
📂 Helpers
📃 FileHelper.cs
📂 Interceptors
📃 AspectInterceptorSelector.cs
📃 MethodInterception.cs
📃 MethodInterceptionBaseAttribute.cs
📂 IoC
📃 ICoreModule.cs
📃 ServiceTool.cs
📂 Messages
📃 AspectMessages.cs
📂 Results
📃 IDataResult.cs
📃 DataResult.cs
📃 SuccessDataResult.cs
📃 ErrorDataResult.cs
📃 IResult.cs
📃 Result.cs
📃 SuccessResult.cs
📃 ErrorResult.cs
📂 Security
📂 Encryption
📃 SecurityKeyHelper.cs
📃 SigningCredentialsHelper.cs
📂 Hashing
📃 HashingHelper.cs
📂 JWT
📃 AccessToken.cs
📃 ITokenHelper.cs
📃 JwtHelper.cs
📃 TokenOptions.cs
🗃 Presentation Layer
📃 Program.cs
🗃 WebAPI Layer
📃 Startup.cs
📂 Controllers
📃 AuthController.cs
📃 BrandsController.cs
📃 CarImagesController.cs
📃 CarsController.cs
📃 ColorsController.cs
📃 CreditCardsController.cs
📃 CustomersController.cs
📃 RentalsController.cs
📃 UsersController.cs
Brands | CarImages | Cars | Colors | Customers | OperationClaims | Rentals | UserOperationClaims | Users | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|