Book Image

Code-First Development with Entity Framework

By : Sergey Barskiy
Book Image

Code-First Development with Entity Framework

By: Sergey Barskiy

Overview of this book

<p>Entity Framework Code-First enables developers to read and write data in a relational database system using C# or VB.NET. It is Microsoft's answer to demand for an ORM from .NET developers.</p> <p>This book will help you acquire the necessary skills to program your applications using Entity Framework. You will start with database configuration and learn how to write classes that define the database structure. You will see how LINQ can be used with Entity Framework to give you access to stored data. You will then learn how to use Entity Framework to persist information in a Relational Database Management System. You will also see how you can benefit from writing ORM-based .NET code. Finally, you will learn how Entity Framework can help you to solve database deployment problems using migrations.</p>
Table of Contents (15 chapters)
Code-First Development with Entity Framework
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Introduction to schema changes


It is good for everyone to experiment with his or her first application. However, it is very likely that we will encounter an exception if we make changes to the Person class or add another collection to the Context class. Let's take a look at what happens when we add more classes and properties to the context. In this example, we are going to create a Company class and add it the context as a collection. Here is another simple class that represents a second table in our database:

public class Company
{
    public int CompanyId  { get; set; }
    public string Name { get; set; }
}

Here is how our context class definition looks after the addition of the new collection:

public class Context : DbContext
{
    public Context()
        : base("name=chapter2")
    {

    }
    public DbSet<Person> People { get; set; }
    public DbSet<Company> Companies { get; set; }
}

This code illustrates an important concept. We can now see that our context represents...