Take a developer journey that paves the way to enterprise-level database access from .NET and C# using the object-relational mapper (ORM) of choice. This second edition is revised to cover Entity Framework Core 5 and 6 (EF) and includes new content on table-per-type mapping, LINQ improvements (filtered includes), many-to-many navigation changes, split queries, simple logging using the DBCommandInterceptor, and other improvements available in EF Core 6. Real-world examples and considerations are presented in this book to help you create robust and efficient database solutions. Throughout the text, actual problems, questions, and common pitfalls are provided to help you recognize optimal solutions for maximum success in the different application scenarios you might encounter.
Practical Entity Framework Core 6 focuses on the code first approach to developing a database. Taking the code first approach allows the entire database to be built and maintained in code using EF Core 6 so there is never a situation in which you cannot restore the database schema. Additionally, the code first approach creates an entirely transparent record of changes to the database that is easily tracked in source control systems such as GitHub. Emphasis throughout the book is on leaving you well positioned to architect and lead data development efforts for your organization.
What You Will Learn
• Build robust and maintainable databases using a code first approach
• Create and execute stored procedures, triggers, and functions
• Analyze and optimize performance of database queries
• Ensure data integrity through keys, constraints, and relationships
• Encrypt your database columns at rest with TDE and Always-On Encryption
• Leverage the FluentAPI and attributes for entity configuration
Who This Book Is For
.NET developers who work with enterprise-level applications and need to interact with data structures and data within the back end data store, developers who want to take a code first approach to building database applications to prevent conflicts and optimize efficiency, and those who are moving into full-stack roles, or into senior and architectural roles, and will be responsible for database design and implementation
Brian Gorman is a developer, computer science instructor, and trainer, and has been working in .NET technologies as long as they have existed. He was originally MCSD certified in .NET 1 and has recently re-certified with MCSA: Web Apps and MCSD: App Builder certifications. Additionally, he became an MCT as of April 2019, and is focusing on developing and training developers with full-stack web solutions with .NET Core and Azure. In addition to working with .NET technologies, Brian also teaches computer science for Franklin University, where his courses have included data structures, algorithms, design patterns, and, more recently, full-stack solutions in the capstone practicum course.