Cademy logoCademy Marketplace

Course Images

Entity Framework Core - A Full Tour

Entity Framework Core - A Full Tour

🔥 Limited Time Offer 🔥

Get a 10% discount on your first order when you use this promo code at checkout: MAY24BAN3X

  • 30 Day Money Back Guarantee
  • Completion Certificate
  • 24/7 Technical Support

Highlights

  • On-Demand course

  • 10 hours 31 minutes

  • All levels

Description

Dive into the comprehensive world of Entity Framework Core with this detailed course, designed to equip you with the skills to efficiently use EF Core in .NET applications.

We begin with an introduction to Entity Framework Core, followed by an essential update on .NET 8, setting the stage for the detailed exploration that follows. The course systematically guides you through the Environment Setup, ensuring you have the necessary tools and understanding to proceed. Begin with basic concepts and progressively advance to more complex topics. The course covers project setup in both Visual Studio and Visual Studio Code, explaining data models, database context, and database support in EF Core. You'll learn about code-first development, migrations, and even reverse engineering an existing database, providing a well-rounded understanding of database interactions using EF Core. Then we delve into querying a database, discussing everything from basics and filters to advanced querying techniques and performance enhancement tips. You'll gain insights into manipulating data, handling changes, and managing database migrations effectively. Next, we will take a deep dive into database relationships, and you'll explore various types of relationships and their practical implementation. As you'll work with raw SQL, views, stored procedures, and the integration of EF Core with ASP.NET Core. The course concludes with a look at data validation, database transactions, and handling data concurrency issues.

What You Will Learn

Set up and configure your development environment for EF Core
Create, query, and manipulate databases using EF Core techniques
Understand and implement various database relationships and loading methods
Execute advanced querying with LINQ and raw SQL in EF Core
Integrate EF Core with ASP.NET Core for dynamic web applications
Manage database changes and migrations efficiently

Audience

This course is ideal for students eager to learn Entity Framework through practical, hands-on experience. It specifically caters to those who wish to understand the workings of EF Core in a focused manner, without the complexities of patterns and user interface design.

Familiarity with C# will be crucial as it is the primary language used in conjunction with Entity Framework Core. Additionally, a basic grasp of database development is essential.

Approach

The teaching approach in this course is immersive and practical, focusing on real-world applications. It combines theoretical knowledge with extensive hands-on exercises, allowing students to apply concepts directly through coding exercises. This course simplifies complex topics into digestible segments, ensuring a clear understanding of EF Core's functionality.

Key Features

Comprehensive coverage from basic to advanced EF Core concepts. * Detailed exploration of querying, manipulating data, and managing database changes. * Practical integration of EF Core with ASP.NET Core, enhancing web development skills.

Github Repo

https://github.com/PacktPublishing/Entity-Framework-Core---A-Full-Tour

About the Author

Trevoir Williams

Trevoir Williams is a software engineer and part-time lecturer. With a master's degree in computer science, he has spent over a decade teaching web, software, and database development courses. He also has extensive industry experience in web application development, Azure Cloud system, and server administration. He enjoys teaching IT and development courses and hopes to impart knowledge of the latest developments in industry standards and techniques to his students.

Course Outline

1. Introduction

Embark on a learning adventure with Entity Framework Core, starting with a fundamental overview and its significance in .NET development in this section.

1. Introduction

Kick off your journey into Entity Framework Core, setting the stage for an in-depth learning experience.

2. What is Entity Framework Core?

Gain a foundational understanding of Entity Framework Core and its role in .NET applications.


2. Environment Setup

In this section, master the setup of crucial development tools including Visual Studio, Visual Studio Code, .NET Core, and EF Core Tools for Entity Framework Core

1. Toolset Overview

Explore the essential tools and software needed for effective Entity Framework Core development.

2. Install Visual Studio - Windows

Step-by-step guidance on installing Visual Studio on Windows for Entity Framework Core development.

3. Install Visual Studio Code

Step-by-step guidance on installing Visual Studio on Windows for Entity Framework Core development.

4. Install .NET Core and EF Core Tools

Get up and running with .NET Core and Entity Framework Core tools, essential for your development toolkit.


3. Getting Started with Entity Framework Core

In this section, master the basics of Entity Framework Core, from setting up projects in Visual Studio to understanding data models, database contexts, and both 'Code First' and 'Database First' approaches.

1. Section Overview

An overview of what to expect in this comprehensive section on starting with Entity Framework Core.

2. Setup Project Solution - Visual Studio

Learn to set up your Entity Framework Core project solution using Visual Studio.

3. Setup Project Solution - Visual Studio Code + Dotnet CLI

Discover how to establish your project using Visual Studio Code and the Dotnet CLI.

4. What are Data Models?

Understand the concept and significance of data models in Entity Framework Core.

5. Creating the Data Models with EF Core

Step into creating effective data models using Entity Framework Core.

6. Understanding the Database Context

Grasp the critical aspect of the database context in Entity Framework Core.

7. Adding a Database Context

Learn the practical steps to add a database context in your Entity Framework Core project.

8. EF Core and Database Support

Explore the range of databases supported by Entity Framework Core and their integrations.

9. Specifying the Data Provider and Connection String

Master the process of specifying data providers and connection strings in Entity Framework Core.

10. Understanding Code First Development and Migrations

Dive into the 'Code First' development approach and the migration process in EF Core.

11. Setup Console App Project

Learn to set up a console application project as part of your Entity Framework Core learning.

12. Adding a Migration

Get hands-on experience in adding a migration to your Entity Framework Core project.

13. Generating a Database (Code-First)

Understand the process of generating a database using the Code-First approach in EF Core.

14. Understanding Database First Development

Discover the 'Database First' development approach in Entity Framework Core.

15. Reverse Engineer Existing Database

Learn to reverse-engineer an existing database in the context of Entity Framework Core.

16. Seeding Data

Get acquainted with the process of seeding data into your databases using Entity Framework Core.

17. Section Review

Reflect on the key takeaways from the section about getting started with Entity Framework Core.


4. Using Entity Framework Core to Query a Database

In this section focuses on querying databases with Entity Framework Core, covering everything from basics, filtering, LINQ syntax, performance optimization, to advanced querying techniques

1. Section Overview

An introductory overview of querying databases using Entity Framework Core.

2. Adding Verbose Logging to EF Core's Workload

Learn how to add verbose logging to monitor and debug EF Core's operations effectively.

3. Fix: Database Connection String Refactor

Master the process of refactoring database connection strings in EF Core applications.

4. LINQ as Entity Framework Core Syntax

Understand the application of LINQ as the primary syntax for querying in EF Core.

5. Querying Basics

Grasp the fundamental techniques of querying databases using Entity Framework Core.

6. Synchronous vs. Asynchronous Syntax

Differentiate between synchronous and asynchronous syntax in EF Core queries.

7. Querying for a Single Record

Learn the nuances of querying for individual records in a database using EF Core.

8. Add Filters to Queries

Enhance your queries with filtering techniques to retrieve specific data in EF Core.

9. Additional Filtering Features

Explore advanced filtering techniques for complex queries in this video.

10. Alternative LINQ Syntax

Discover alternative LINQ syntax for diverse querying scenarios.

11. Aggregate Methods

Use aggregate methods to summarize and analyze data sets.

12. Group By

In this video, you will learn to group data effectively for insightful analysis.

13. Order By

Organize query results using the 'Order By' clause.

14. Skip and Take

Implement pagination in queries with Skip and Take methods.

15. Projections and Custom Data Types

Create projections and use custom data types in queries.

16. Tracking Vs. No Tracking (Enhancing Performance)

Optimize performance with tracking and no-tracking queries.

17. IQueryables vs List Types

Compare IQueryable and List types for efficient data handling.

18. Efficient Querying Tips and Tricks

Essential tips for enhancing the efficiency of database queries.

19. Section Review

Review of key concepts and techniques from this Section.


5. Using Entity Framework Core to Manipulate Data

In this section, we will learn essential data manipulation in EF Core, from tracking changes to executing insert, update, and delete operations efficiently.

1. Section Overview

An introductory overview of data manipulation using EF Core.

2. Understanding Tracking and Saving Changes

Learn about tracking changes and saving data in EF Core.

3. Simple Insert Operations

Master the basics of inserting data into databases with EF Core.

4. Simple Update Operations

Update records efficiently in databases using EF Core.

5. Simple Delete Operations

Learn how to delete records correctly using EF Core.

6. ExecuteUpdate and ExecuteDelete (>= EF Core 7)

Explore new methods in EF Core 7 for updating and deleting data.

7. Section Review

A comprehensive review of data manipulation concepts in EF Core.


6. Handling Database Changes and Migrations

Master the intricacies of database management in EF Core, covering everything from migrations and entity additions to rollback techniques and runtime applications.

1. Section Overview

Introduction to managing database changes and migrations in EF Core.

2. Review Entity Framework Core Migrations

Deep dive into the mechanisms and functionalities of EF Core migrations.

3. Adding More Entities

Learn to add and integrate more entities into your EF Core model.

4. Updating Database with Migration(s)

Update databases effectively using migration techniques.

5. Using Configuration Files

Utilize configuration files for efficient database management.

6. Generating Migration Scripts

Generate scripts to automate and manage database migrations.

7. Rolling Back Migrations and Database Changes

Master the rollback of migrations and database changes for safety.

8. EF Bundles

Explore EF Bundles for simplified database management.

9. Applying Migrations at Runtime

Learn to apply migrations dynamically during runtime.

10. Section Review

Review and consolidate knowledge gained in this section.


7. Interacting With Related Records

Delve into the complexities of managing database relationships in EF Core, covering everything from one-to-one to many-to-many relationships. This section provides practical guidance on implementing, visualizing, and updating relational data effectively.

1. Section Overview

An introductory guide to interacting with related records in EF Core.

2. Database Relationships and Entity Framework Core

Understand how to handle database relationships within EF Core.

3. One to Many Relationships

Explore the concept and application of one-to-many relationships.

4. Adding One-To-Many Relationships

Learn to add and manage one-to-many relationships effectively.

5. View Diagram with Entity Framework Core Tools

Visualize database relationships using EF Core tooling.

6. Many to Many Relationships

Understand and implement many-to-many relationships in EF Core.

7. Adding Many-To-Many Relationships

Detailed walkthrough of adding many-to-many relationships.

8. Understanding One-To-One Relationships

Comprehend the nuances of one-to-one relationships in databases.

9. Adding One-To-One Relationships

Learn how to add and manage one-to-one relationships in EF Core.

10. Update Database With Relationships

Update your database effectively to reflect new relationships.

11. Inserting Related Data

This video demonstrates the techniques for inserting data into related tables.

12. Understanding Loading Methods

Overview of different data loading methods in EF Core.

13. Including Related Data with Eager Loading

Implement eager loading to include related data efficiently.

14. Including Related Data with Explicit Loading

Learn explicit loading for more control over data retrieval.

15. Including Related Data with Lazy Loading

Master lazy loading for on-demand data retrieval in EF Core.

16. Filtering on Related Records

Filter data effectively while working with related records.

17. Projections and Anonymous Data Types

Utilize projections and anonymous types for optimized queries.

18. Understanding Delete Behaviors

Understand and handle various delete behaviors in relational data.

19. Section Review

Review of key concepts and practices in managing related records.


8. Working With Raw SQL, Views and Stored Procedures

Dive deep into advanced SQL techniques in EF Core, covering everything from adding non-table objects and keyless entities to executing raw SQL queries and user-defined functions. This section provides a comprehensive exploration and review of employing sophisticated SQL strategies within Entity Framework Core.

1. Section Overview

Introduction to advanced SQL techniques within EF Core.

2. Adding Non-Table Objects with Migrations

Learn how to add non-table objects, like views, with migrations in EF Core.

3. Querying Keyless Entities (Like Views)

Master querying keyless entities such as database views.

4. Querying with Raw SQL - Part 1

Start querying databases directly using raw SQL in EF Core.

5. Querying with Raw SQL - Part 2

Advanced techniques in querying with raw SQL.

6. Querying scalar

Understand how to query scalar values directly from the database.

7. Executing User-defined Funcitons

Execute user-defined functions seamlessly within EF Core.

8. Limitations of Raw Queries and EF Core

Discover the limitations and considerations when using raw SQL queries.

9. Section Review

Review of querying techniques using raw SQL, views, and stored procedures.


9. ASP.NET Core and EF Core

Discover the seamless integration of EF Core with ASP.NET Core, covering everything from project creation and database connections to best practices and error resolution. This section offers a comprehensive guide to effectively scaffold and develop robust web applications using Visual Studio tools.

1. Section Overview

Overview of integrating EF Core with ASP.NET Core.

2. How EF Core and ASP.NET Core Work

Dive into how EF Core and ASP.NET Core work together for web development.

3. Create ASP.NET Core Project

Step-by-step guide to creating an ASP.NET Core project with EF Core.

4. Connect to the Database Context

Connect your ASP.NET Core project to the EF Core database context.

5. Fixing EF Core Design Time Errors

Resolve common design-time errors in EF Core.

6. Scaffolding Code with Visual Studio

Learn scaffolding code with Visual Studio for efficient development.

7. Scaffolding Code with Visual Studio Code

Scaffolding code using Visual Studio Code and EF Core.

8. Exploring Scaffolded Code

Explore the structure and function of scaffolded code.

9. Review Best Practices

Discuss best practices for using EF Core with ASP.NET Core.

10. Section Review

Review key concepts in integrating EF Core with ASP.NET Core.


10. Additional Features and Considerations

Explore advanced EF Core features, from manipulating entries and implementing temporal tables to handling data concurrency and optimizing query filters for efficient database management.

1. Section Overview

Introduction to advanced features in EF Core.

2. Manipulate Entries Before Saving Changes

Manipulate entity entries before committing changes to the database.

3. SQL Server Temporal Tables

Implement SQL Server temporal tables for historical data tracking.

4. Data Validation with Data Annotations

Validate data using data annotations within EF Core.

5. Pre-convention model configuration

Configure models before conventions apply in EF Core.

6. Support For Database Transactions

Learn to manage database transactions effectively.

7. Handling Data Concurrency Issues

Handle concurrency issues in your database with EF Core.

8. Using Query Filters

Filter queries efficiently using built-in query filters.

9. Database Connection Retry and Timeout Policies

Manage database connections with retry and timeout policies.


11. Conclusion

Conclude your journey with Entity Framework Core, summarizing key insights and lessons from the comprehensive course. Reflect on the skills acquired and the knowledge gained in mastering EF Core.

1. Conclusion

Final thoughts and key takeaways from the comprehensive Entity Framework Core course.

Course Content

  1. Entity Framework Core - A Full Tour

About The Provider

Packt
Packt
Birmingham
Founded in 2004 in Birmingham, UK, Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and i...
Read more about Packt

Tags

Reviews