Skip to content

Saeed-Ghotbi/SaeedLearn

Repository files navigation

SaeedLearn

Project Description

This project aims to improve programming skills and gain practical experience using modern technologies such as Asp.Net Core 6, Clear Architecture, SOLID, Identity, CQRS Architecture, EF Core, and Unit Test.

Technologies Used

  • Asp.Net Core 6: A popular and powerful web programming framework used for launching dynamic and scalable web applications with less code.
  • Clear Architecture: An architecture used to improve the separation of concerns between project layers, enabling the writing of program code in independent and reusable modules.
  • SOLID Principles: These principles (Single Responsibility Principle, Open-Closed Principle, Liskov Substitution Principle, Interface Segregation Principle, and Dependency Inversion Principle) are followed to help write code with high flexibility and transparency.
  • Identity: Used for managing and authenticating user identities, enabling the management of users and their roles.
  • CQRS Architecture: Used to separate commands and queries, allowing for the implementation of these elements separately to perform an operation.
  • EF Core: Used to create the database, which is an ORM framework that enables communication with the database using object-oriented programming and working with it easily.
  • Unit Test: Used to execute tests and ensure code quality. Tests are written to check the correctness and efficiency of the program and executed using software such as xUnit.

Installation and Usage

To use this project, Visual Studio 2022 is needed for development, and Sql Server LocalDb is used as the database engine to create the database.

To install the project:

  1. Clone the file from GitHub and open it in Visual Studio.
  2. To create the database, add initial data to the database by running the commands in the SeedData.cs file.
  3. Run the Build and Run commands in Visual Studio to execute the project.
  4. To execute Unit Test, install the required packages and then run the tests through the Test menu in Visual Studio.