Booking options
£59.99
£59.99
On-Demand course
10 hours 31 minutes
All levels
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.
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
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.
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.
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.
https://github.com/PacktPublishing/Entity-Framework-Core---A-Full-Tour
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.
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. |