Skip to main content
Version: v1.2

📓 3.4.0.1 Many-To-Many Objectives

In the last course section, we learned about MySQL databases and using Entity Framework Core to simplify our projects. In this section, we'll continue working with EF Core and learn how to build out more complex applications with many-to-many relationships.

We'll also learn how to create and manage our databases using migrations and build many-to-many relationships in EF Core using join entities.

Finally, we'll learn how to validate our models with validation attributes and how to display data from multiple database tables on our To Do List's splash page.

Independent Project Objectives


At the end of this section, you will complete an independent project. Your code will be reviewed for the following objectives:

  • Does at least one of your classes have all CRUD methods implemented in your app?
  • Are you able to view both sides of the many-many relationship? For a particular instance of a class, are you able to view all of the instances of the other class that are related to it?
  • Build files and sensitive information are included in .gitignore file and is not to be tracked by Git, and includes instructions on how to create the appsettings.json and set up the project.
  • Project is in a polished, portfolio-quality state.
  • The prompt's required functionality and baseline project requirements are in place.

Previous Objectives

For reference, here are the previous objectives that continue to apply:

  • Do the database table and column names follow both the specific requirements for this project and general .NET naming conventions?
  • Are the instructions for re-creating your database thorough and clear?
  • Build files and sensitive information is included in .gitignore file and is not to be tracked by Git, and includes instructions on how to create the appsettings.json and set up the project.
  • Did you follow naming conventions?
  • Does your code have proper indentation and spacing?
  • Did you include a README with a description of the program, setup instructions for the database, a copyright, a license, and your name?
  • Is the project tracked in Git, and did you regularly make commits with clear messages that finish the phrase "This commit will…"?