Dora Turizm is a web application designed to manage Hajj and Umrah tour services, offering a user-friendly interface, strong security features, and efficient management tools.
- Admin Panel: A centralized panel for managing content and user interactions.
- JWT Authentication: Secure authentication using access and refresh tokens.
- Aspect-Oriented Programming (AOP): Modular code structure for cross-cutting concerns like authorization and logging.
- Multi-Layered Architecture: Separates data access, business logic, and presentation layers for a scalable and maintainable codebase.
- Entity Framework Core: Provides a powerful ORM for database operations.
Technology | Description |
---|---|
ASP.NET Core MVC | Utilizes the Model-View-Controller pattern for handling user interface and business logic. |
Entity Framework Core | Offers Object-Relational Mapping (ORM) for seamless database interactions. |
JWT Authentication | Provides secure session management with access and refresh tokens. |
Aspect-Oriented Programming (AOP) | Handles cross-cutting concerns like security and error logging in a centralized way. |
Multi-Layered Architecture | Enables modular, maintainable code by separating concerns into distinct layers. |
Autofac | Used for dependency injection and resolving dependencies across different layers in the application. |
FluentValidation | Provides a fluent interface for defining validation rules for models and entities. |
The project follows a multi-layered architecture, ensuring separation of concerns and a clean code structure. The main layers are:
- WebUI MVC: The user interface layer, built using ASP.NET Core MVC, handles client-side interactions and displays data to the user.
- WebAPI: A set of RESTful APIs exposed for communication between the front end and backend services.
- Business Layer: Contains the core business logic and application-specific rules.
- Core Layer: Houses common utilities, constants, and shared resources used across other layers.
- DataAccess Layer: Responsible for interacting with the database, utilizing Entity Framework Core for ORM functionality.
- Entity Layer: Contains data models and entities that represent the database structure, used by the DataAccess layer.
- Harun Karagöz - Developer
This project is licensed under the MIT License.