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

Creating table structures


Let's consider all the structures that can be created.

Mapping .NET types to SQL types

Before we start, it would be helpful to take a look at the mappings between .NET types and SQL Server column types. You remember that there is a distinct mismatch between the two, which is one of the problems that Entity Framework strives to fix. You can also find similar mappings between .NET and other RDBMSes, such as Oracle. In this book, we will concentrate on SQL Server. It is not always important to keep these mappings in mind. For example, if you define a property in .NET as integer, you can safely assume that Entity Framework will handle the column's definition and use the appropriate type; for example, int in SQL Server. Here are the mappings for the most commonly used .NET types:

SQL Server Database type

.NET Framework type

Bigint

Int64

binary, varbinary

Byte[]

Bit

Boolean

date, datetime, datetime2, smalldatetime

DateTime

Datetimeoffset

DateTimeOffset...