Course Portal is an application that a school could use for managing everything related to a school's set of courses. It allows for a new student to sign up, view their current enrollment, add courses to their enrollment, and view transcripts. It also supports management of the courses, such as reserving a building, room, and time that the course will be held in, grading of the courses by instructors of students currently enrolled, and adding/removing course offerings. This application will help with the complex day to day organization and management of the courses that the school offers.
- C# - version 9.0
- .NET framework - version 5.0
- ASP.NET API - version 5.0
- T-SQL (Azure SQL) - 15.0.2000.5
- EntityFramework Core - 5.0
List of features ready and TODOs for future development
- REST API provided with ASP.NET API
- Entity Framework Core POCO classes
- Generic Repository for POCO classes that implements
ICollectionandIQueryable - Routes that allow CRUD for users, classes, buildings, rooms, departments, enrollments, instructors, and course assistants
- Database diagram implemented: project2-db-diagram2
To-do list:
- Okta Authentication Login
- T-SQL functions and procedure for additional business rules
Prerequisites:
Install Microsoft SQL Server or otherwise get a ADO.NET connection string to a remote SQL Server.
git clone https://github.com/2011-nov02-net/DHL-Project2.git
cd DHL-Project2
dotnet run -p ./Project2.Api
This project can be run locally, but is intended to be deployed to Azure App Service. To run locally set the port number in the appsettings.json. The application is build on top of database first entityframework, so the *schema.sql in the datamodel folder must be run before starting the server, and the application needs the ADO.NET connection string to be named Project2connection in the appsettings.json or appsettings.Development.json in the Project2.Api folder. The rest api server can be started in with dotnet run -p ./Project2.Api.
- David Barnes
- Luke Fisher
- Har'el Fishbein
This project uses the following license: MIT License.