This is a project that implements an online testing system, designed for two types of users: teachers and examinees. The system allows teachers to create and manage exams, while examinees can take exams online.
Watch our video presentation here to learn more about the online testing system.
-
Teachers can:
- Add new exams
- Edit existing exams
- View statistics of exam results
-
Examinees can:
- Choose an exam from a list of available exams
- Answer multiple-choice questions in the exam
-
Exams are composed of multiple-choice questions, similar to American exams, with no limit on the number of answers per question
-
Questions can be presented as text or as images, and each question carries the same point value
- 🖥️ Client-side: C# WPF
- 🌐 Server-side: .NET ASP and Entity Framework for creating an API to facilitate communication between the client and server components of the system
The following NuGet packages are used in this project:
Microsoft.EntityFrameworkCore.Core
: Used for Entity Framework Core, which is an ORM (Object-Relational Mapping) for working with databases in .NET applications.Microsoft.AspNet.WebApi.Client
: Used for building HTTP clients in ASP.NET Web API applications, which allows communication with remote APIs.Newtonsoft.Json
: Used for JSON serialization and deserialization in .NET applications.
To set up the online testing system locally, follow these steps:
- Clone the repository to your local machine.
- Set up the client-side using WPF technology.
- Set up the server-side using .NET ASP and Entity Framework to create the API.
- Restore the NuGet packages using the package manager or the
dotnet restore
command. - Run the system locally for testing and development purposes.
Contributions to this project are welcome. If you would like to contribute, please open an issue or submit a pull request. Let's make the online testing system better together!