Skip to content

This is a web app developed on ASP.NET. The project features a microservices architecture with Ocelot as the gateway managing routes between three APIs and the client app. It includes cookie-based authorization and field validation. Data is managed and saved in an MS SQL Server database via EF Core.

License

Notifications You must be signed in to change notification settings

zabavb/Technology-store

Repository files navigation

Technology Store Logo

Technology Store ASP.NET Application

Project Overview

Technology Store is a web application developed using ASP.NET and C#. The project features a microservices architecture with Ocelot as the gateway managing routes between three APIs (OrderAPI, ProductAPI, UserAPI) and the client application. It includes cookie-based authorization and field validation. Data is managed and saved in an MS SQL Server database via Entity Framework Core. This app allows admins and managers to manage products, users, and orders through CRUD operations, while clients can view products, search, add items to their basket, make orders, cancel orders, and view their profile with loging, registrating into system.

Project Details

  • Languages: C#
  • Technologies: .NET Framework Entity Framework Ocelot API
  • Security: Cookie Authentication
  • Project Type: ASP.NET Web App

Development Details

This project was a course assignment at IT Step Computer Academy. It demonstrates CRUD operations for product, user, and order management with role-based access control, integrating MS SQL Server with Entity Framework Core. The project also uses Bootstrap for UI styling and Ocelot for managing API routes.

Getting Started

Note: This project requires an MS SQL Server setup with proper connection strings.

Follow these steps to set up the project:

  1. Clone the repository:
    git clone https://github.com/zabavb/Technology-store.git
  2. Configure your MS SQL Server and update the connection strings in the appsettings.json file.
  3. Install the required NuGet packages, including Ocelot, Microsoft.EntityFrameworkCore, and others as needed.
  4. Open the solution file in Visual Studio, build the project, and run the application.

Features

  • Role-based Access: Admins and managers can manage products, users, and orders, while clients have restricted access to view products, manage their basket, and place/cancel orders.
  • Security: Cookie-based authentication with field validation for secure data handling.
  • API Management: Ocelot handles API routing between client and microservices, with a clean, streamlined gateway setup.

Usage

To use this application, ensure you have the necessary permissions and connection strings configured. Admins and managers can manage products, users, and orders, while clients can explore product catalogs, manage orders, and view their profiles.

Contributing

Contributions are welcome! If you have any suggestions or improvements, feel free to fork the repository and submit a pull request.

  1. Fork the Repository: Click the "Fork" button at the top-right of this page.
  2. Create a Branch: Create a new branch for your changes.
  3. Commit Changes: Make your changes and commit them with a descriptive message.
  4. Push to Your Fork: Push your changes to your forked repository.
  5. Submit a Pull Request: Go to the "Pull Requests" tab and submit a new pull request.

Contact

For any questions or inquiries, you can reach me at mail or connect with me on LinkedIn.

References

Acknowledgements

  • Thanks to IT Step Academy for providing the resources and guidance for this project.
  • Special thanks to Microsoft for their comprehensive documentation and cloud services.
  • Gratitude to the open-source community for NuGet packages and contributions.

Feel free to modify or extend this README to fit your needs better. Happy coding!

About

This is a web app developed on ASP.NET. The project features a microservices architecture with Ocelot as the gateway managing routes between three APIs and the client app. It includes cookie-based authorization and field validation. Data is managed and saved in an MS SQL Server database via EF Core.

Topics

Resources

License

Stars

Watchers

Forks