C# Projects

  • Project Description: Boursorama Bank - Banking Operation Simulation Application (Windows Forms C#)

    This application, developed using Visual Studio with C# and Windows Forms, is designed to simulate common banking operations such as deposits, withdrawals, and transfers. It also includes features for managing bank clients and administrators (employees), with data persistence handled by SQL Server.

    Key elements of the project include:
    • Platform & Language: Windows Forms desktop application developed in C#.
    • Data Management: Utilizes SQL Server (a local database integrated within Visual Studio) for storing data (clients, administrators, transactions). Tables include: Administrateurs (Administrators), Clients (Clients), Dépôts (Deposits), Retraits (Withdrawals), Virements (Transfers).
    • Architecture: Project is structured with distinct views/forms (.cs files) and an `App.config` file to manage the database connection string.
    • User Interface Features (Views/Forms):
      • Login: Initial authentication form for administrators and the super administrator.
      • Home: Main form providing access to the different banking functionalities.
      • Clients: Form for managing clients (add, modify, delete). Automatically generates RIB (Relevé d'Identité Bancaire - Bank Identity Statement) and current/savings account numbers upon adding a new client. Displays client information in a DataGridView.
      • Deposit: Form for making deposits into client accounts (requires administrator authentication). Shows deposit history.
      • Withdrawal: Form for making withdrawals from client accounts (requires administrator authentication). Shows withdrawal history.
      • Transfer: Form for making transfers between accounts (requires administrator authentication, specification of recipient and their RIB). Shows transfer history.
      • Parameters: Form for managing other administrators (add and delete), accessible only to the Super Administrator after providing their dedicated password.
    • Application Logic: Implements business rules for transactions (updating balances, validating withdrawals/transfers based on funds). Manages access to features based on user role (Super Admin vs. Administrator).

    This project provides a functional simulation of a basic banking management system, incorporating a graphical user interface, relational database management, and the processing of standard financial transactions.



  • Project Description: ManagerPro 2.0 - Supermarket Management Application (WPF C#)

    This application, developed using Visual Studio with C#, implements the core operations of a supermarket or store. Built on the WPF (Windows Presentation Foundation) framework, it provides a rich graphical interface with a clear separation between the UI (XAML) and the business logic (C#). Data persistence is managed using SQL Server.

    Key elements of the project include:
    • Platform & Technologies: Desktop application developed using WPF (Windows Presentation Foundation), C#, and XAML for the user interface.
    • Data Management: Utilizes SQL Server (local database integrated within Visual Studio) for storing data related to articles (products), users (administrators and vendors), stock, and sales.
    • Architecture: Employs a multi-level architecture, separating data access, business logic, and the presentation layer (UI). XAML is used for declarative UI design, while C# handles the code-behind and logic.
    • User Roles & Security: Implements two distinct user roles: Super Administrator and Vendor. Access to certain sensitive operations (like adding/deleting users or articles) is restricted and requires the Super Administrator's password for confirmation.
    • Functionalities & Modules: The application provides several modules accessible via the main dashboard:
      • Dashboard (Accueil): Provides an overview of key metrics such as total unique articles, number of vendors, total units in stock, and total sales of the day.
      • Articles (Gestion des Articles): Manages product information (name, category, price, stock, critical threshold, expiry date). Allows adding new articles and searching/filtering existing ones by name or category. Requires administrator password for adding/modifying/deleting.
      • Vendors (Gestion des Vendeurs): Manages vendor (employee) information (name, phone, working hours). Allows adding new vendors (with role assignment) and modifying their details. Requires Super Administrator password for adding/deleting vendors.
      • Stock (Gestion des Stocks): Displays current stock levels for all articles. Can filter/refresh the stock list.
      • Sales (Gestion des Ventes): Facilitates sales transactions. Users can add items to a virtual cart based on product name and quantity, view item details (unit price, total price), calculate the total sale amount (with VAT breakdown), select payment method (Cash, Card, Check, Mobile Money), validate the sale (requires vendor password), print a receipt (to PDF), and view sales history.
      • Reports (Rapports et Analyses): Allows generating and viewing different types of reports (e.g., Sales Reports, Stock Reports, Vendor Activity). Reports can be filtered by date and exported (e.g., to CSV) or printed (to PDF).
      • Parameters (Paramètres - Gestion des Utilisateurs): Provides the interface for the Super Administrator to manage users (add/delete administrators or vendors) and their roles, secured by the Super Admin password.

    This project showcases a practical application for retail management, demonstrating robust UI design with WPF, efficient data handling with SQL Server, and secure multi-level access control for different user roles.



  • Project Description: enVoitureAvecAlain - Online Driving School Management Application (ASP.NET Web Forms C#)

    This web application, developed in Visual Studio using C# and ASP.NET Web Forms, simplifies the management of an online driving school for both students and instructors. It follows a classic ASP.NET approach with data connectivity via ADO.NET and utilizes a local SQL Server database. The architecture separates presentation (UI) from server-side logic (code-behind).

    Key elements of the project include:
    • Platform & Technologies: Web application developed using ASP.NET Web Forms (classic approach), C#, and ADO.NET for database interaction. Utilizes standard `.aspx` pages for UI, `.aspx.cs` for code-behind logic, and auto-generated `.aspx.designer.cs` files for UI control references.
    • Data Management: Persistence handled by a local SQL Server database (`.mdf` file) located in the `App_Data` folder. Database tables include `Eleves` (Students), `Moniteurs` (Instructors/Monitors), and `Reservations`.
    • User Roles & Security: Supports two distinct user roles: Student (`Élève`) and Instructor/Monitor (`Moniteur`). Access control is implemented, notably requiring a Super Monitor password to add or delete other monitors.
    • Functionalities & Modules:
      • Role Selection (`Choix.aspx`): The initial page allowing users to choose between logging in as a Student or an Instructor/Monitor.
      • Student Login (`LoginEleve.aspx`): Authentication form for students. Includes a link for new users to register.
      • Student Registration (`InscriptionEleve.aspx`): Allows new students to register by providing personal details (Name, First Name, Email - used as login, Password, Confirm Password) and their driving license type. Displays registration success messages and prompts the user to log in.
      • Student Reservation (`ReservationEleve.aspx`): Accessible after student login. Students can fill in reservation details (Permit type, Training mode, Desired date, Date of birth, Age, Address, Email, Payment type). Displays the status of their submitted reservation file (e.g., "Dossier déjà soumis", "Merci de passer à l'agence", "Dossier en cours de traitement").
      • Instructor Login (`LoginMoniteur.aspx`): Authentication form for instructors/monitors.
      • Instructor Space (`Moniteur.aspx`): Accessible after instructor login. Displays a list/table of student reservation files. Instructors can filter demands by month or date range, and validate submitted files (changing their status). Provides access to add new monitors.
      • Add Monitor (`AjouterMoniteur.aspx`): Allows adding new instructor/monitor accounts (Name, Password, Confirm Password, Role). Requires the Super Monitor's password for confirmation, highlighting role-based access control for user management.
    • Architecture & Data Flow: Each ASP.NET page is linked to its code-behind file, where server-side events (like button clicks) trigger logic that interacts with the SQL Server database using ADO.NET to perform operations like retrieving data, inserting new records, and updating statuses.

    The "enVoitureAvecAlain" application provides a basic yet functional system for managing driving school operations online, showcasing fundamental ASP.NET Web Forms development principles, database integration, and multi-user role management. The architecture allows for potential migration to a web server or modernization using frameworks like ASP.NET Core with Entity Framework Core.



Formulaire de contact

Envoyer