You are previewing Fluent Entity Framework.
O'Reilly logo
Fluent Entity Framework

Book Description

A Fluent Learning Book

Based on the principles of cognitive science and instructional design, Fluent Entity Framework, part of the Fluent Learning series, is a true tutorial that will help you build effective working models for understanding a large and complex subject: developing Entity Framework applications using Visual Studio.

Most introductory books just talk at you and give you “exercises” that have more to do with taking dictation than actually learning. Fluent Entity Framework is different. It guides you through learning the way your mind likes to learn: by solving puzzles, making connections, and building genuine understanding instead of just memorizing random facts.

DETAILED INFORMATION ON HOW TO…

• Write .NET applications using Entity Framework 5.0

• Use all three of the supported Entity Framework workflows

• Create, extend, and query arbitrarily complex data models

• Use the Entity Framework Fluent API and T4 templates to create truly provider-independent data models

Table of Contents

  1. Title Page
  2. Copyright Page
  3. Acknowledgements
  4. Contents
  5. Tell Us What you Think!
  6. Getting Started
    1. Introduction
      1. Fluent learning because...
      2. This book isn’t for everyone
      3. What you’ll learn
      4. What you’ll need
      5. How it works
    2. 1. Why Bother?
      1. Information architecture in the kitchen
      2. Who are you?
      3. Task list
      4. The impedance mismatch
      5. The database side
      6. Fixing a schema
      7. Relationships
      8. Integrity constraints
      9. The OOP side
      10. OOA&D
      11. Relational objects
      12. The proof of the pudding...
      13. Review
    3. 2. Hello, EF
      1. Fitting it in
      2. Task list
      3. Setting up
      4. Installing nuget
      5. Create a project
      6. Add the nuget package
      7. Say hello
      8. Add a model
      9. Use the EDM wizard
      10. Edit the model
      11. Write some code
      12. Say what?
      13. What the wizard does
      14. The EDMX
      15. The code
      16. The client
      17. Review
  7. The Designer
    1. 3. Using the Designer
      1. Fitting it in
      2. Task list
      3. The designer & the EDMX
      4. Updating the model
      5. Review
      6. Updating the model
      7. Update model wizard
      8. Update the model
      9. Hey, what happened?
      10. The mapping window
      11. So what happened?
      12. Before we move on...
      13. Mapping functions
      14. Review
      15. The model browser
      16. Review
    2. 4. Complex Models
      1. Fitting it in
      2. Task list
      3. Complex types
      4. Creating complex objects
      5. Create a complex type
      6. Reusing a complex type
      7. Split & partitioned entities
      8. Modelling split entities
      9. Partitioning entities
      10. Partition an entity
      11. Review
      12. TPT Inheritance
      13. Establishing inheritance
      14. TPH Inheritance
      15. Modelling TPH
      16. Review
    3. 5. The Object Model
      1. Fitting it in
      2. Task list
      3. The objectcontext API
      4. Objectcontext designer classes
      5. Entity designer classes
      6. A preview of coming attractions
      7. The DBcontext API
      8. DBContext designer classes
      9. Entity designer classes
      10. Extending the model
      11. Review
    4. 6. Designer Options
      1. Fitting it in
      2. Task list
      3. The model first workflow
      4. Using model first
      5. Using templates
      6. A quick look at T4
      7. Writing T4 templates
      8. Adding a T4 template
      9. Review
  8. The Code
    1. 7. The Code First workflow
      1. Fitting it in
      2. Task list
      3. Code first basics
      4. Code first solutions
      5. Building the data client
      6. Review
      7. Code first conventions
      8. The rules
      9. Controlling the database
      10. Using connection strings
      11. The database class
      12. Initializers
      13. Creating initializers
      14. Review
    2. 8. Controlling The Schema
      1. Fitting it in
      2. Task list
      3. Data annotations
      4. Moving house
      5. Code first relationships
      6. One-to-one relationships
      7. Multiple relationships
      8. Review
      9. The fluent API
      10. Code first fluent api syntax
      11. Things to note
      12. Fluent methods
      13. Model builder configurations
      14. Using fluent configurations
      15. Review
  9. Working with Entities
    1. 9. Querying Models
      1. Fitting it in
      2. Task list
      3. What is a query, exactly?
      4. Basic LINQ
      5. Method syntax
      6. Query execution
      7. Lazy loading
      8. Including related entities
      9. Loading related entities
      10. Query results
      11. LINQ Projections
      12. Entity SQL
      13. Entity SQL syntax
      14. Literal values in entity SQL
      15. Parameterized queries
      16. Pros & cons
      17. Review
      18. API-Specific queries
      19. Working locally
      20. Finding entities
      21. Executing SQL directly
      22. Executing queries directly
      23. Review
    2. 10. Working with Entities
      1. Fitting it in
      2. Task list
      3. Crud operations
      4. Adding entities
      5. Updating & deleting entities
      6. Review
      7. Entity state
      8. Retrieving state entities
      9. Entity undo
      10. Change detection
      11. Creating change proxies
      12. Review
      13. DBcontext validation
      14. Validation annotations
      15. Creating custom attributes
      16. Ivalidatable object
      17. Review
  10. Final Project
    1. 11. On Your Own
      1. Fitting it in
      2. Task list
      3. Determine the requirements
      4. Requirement list
      5. Choose a platform
      6. Choose an architecture
      7. Choose a workflow & API
      8. Build the model
      9. Refining the model
      10. Build the client
      11. Be proud of yourself
      12. Moving on
  11. Index