1 / 13

Entity Framework Code First End to End

Entity Framework Code First End to End. Sergey Barskiy Architect, Tyler Technologies. Level: Introductory to Intermediate. Introduction to EF. Entity Framework in Microsoft’s ORM Tool Has been out since 2008 Code First has been out since 2011. Why Entity Framework Code First. ORM

izzy
Download Presentation

Entity Framework Code First End to End

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Entity Framework Code First End to End Sergey Barskiy Architect, Tyler Technologies Level: Introductory to Intermediate

  2. Introduction to EF • Entity Framework in Microsoft’s ORM Tool • Has been out since 2008 • Code First has been out since 2011

  3. Why Entity Framework Code First • ORM • Code / type safety • Rapid application development and prototyping • Supported and developed by Microsoft • Continuous commitment from Microsoft • Open sourced • Testable • Flexible / Conventions and configurations

  4. Approaches • DAL? • Business Layer? • UI?

  5. Separation of Concerns • EF is DAL technology • Isolation from other layers • Patterns • Repository • Data Mapper • Table Data Gateway • Row Data Gateway • Data Mapper

  6. DAL Strategy • Keep Data (Table) Objects clean • Separate data access from DTOs • Create Access Interface • Expose Data Access in a service layer with business objects • Using Mappers to cut down on code

  7. Developing Model • Configuration Options • Configuration classes • Attributes? • Handling Relationships • Relationship Types • Using foreign key columns • Using Complex types • Legacy databases / explicit mappings

  8. Creating Data Access Layer • Repository Pattern • Mediates between the domain and data mapping layers using a collection-like interface for accessing domain objects. • Interface based repository • CQRS • Write vs. Read Repository • Taking dependency on IQueryable?

  9. Working with Views and Stored Procedures • EF is not all-or-nothing answers • Writing classes for materialization • Avoiding SQL injection

  10. Handling Schema Changes • Code First Migrations • Create database • Maintain schema • Command line migrations • Explicit vs. Implicit Migrations • Initializers (for rapid prototyping) • Migrating initializer

  11. Performance • Caching Context • Web environments • CRUD Efficiencies • Update • Delete • Select • Lazy Loading • Beware of multiple queries

  12. Demo Solution • ASP.NET MVC • Layer Separation via Projects

  13. Contact Info • sergey@barskiy.com • www.DotNetSpeak.com

More Related