Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
ASP.NET Core 2 and Angular 5

You're reading from   ASP.NET Core 2 and Angular 5 Full-stack web development with .NET Core and Angular

Arrow left icon
Product type Paperback
Published in Nov 2017
Publisher Packt
ISBN-13 9781788293600
Length 550 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Authors (2):
Arrow left icon
Valerio De Sanctis Valerio De Sanctis
Author Profile Icon Valerio De Sanctis
Valerio De Sanctis
Jürgen Gutsch Jürgen Gutsch
Author Profile Icon Jürgen Gutsch
Jürgen Gutsch
Arrow right icon
View More author details
Toc

Table of Contents (11) Chapters Close

Preface 1. Getting Ready FREE CHAPTER 2. Backend with .NET Core 3. Frontend with Angular 4. Data Model with Entity Framework Core 5. Client-Server Interactions 6. Style Sheets and UI Layout 7. Forms and Data Validation 8. Authentication and Authorization 9. Advanced Topics 10. Finalization and Deployment

Defining relationships


Now that we have built our main entity skeleton, we need to create some relationships between them. We want to be able to do stuff like retrieve a Quiz, then browse to their related Questions and get the available Answers. We'll also need to fetch the Result(s) for any given score, find out the ApplicationUser who made the quiz, and so on. To do this, we have to implement a set of entity-related properties that Entity Framework will load on demand using its default Lazy-Load retrieval feature.

The first thing we’ll do is add a new region to our Quiz class containing these three new properties:

#region Lazy-Load Properties
/// <summary>
/// The quiz author: it will be loaded
/// on first use thanks to the EF Lazy-Loading feature.
/// </summary>
[ForeignKey("UserId")]
public virtual ApplicationUser User { get; set; }

/// <summary>
/// A list containing all the questions related to this quiz. 
/// It will be populaed on first use thanks to the EF Lazy...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime