Entity Framework Core szybki przeglądEntity Framework Core Quick Overview

Program Entity Framework (EF) Core to lekkie, rozszerzalny, i technologii dostępu do wersji i platform popularnych danych programu Entity Framework.Entity Framework (EF) Core is a lightweight, extensible, and cross-platform version of the popular Entity Framework data access technology.

Podstawowe EF jest mapowania obiektów relacyjnych (O/RM), który umożliwia deweloperom platformy .NET do pracy z bazą danych przy użyciu obiektów platformy .NET.EF Core is an object-relational mapper (O/RM) that enables .NET developers to work with a database using .NET objects. Eliminuje potrzebę większość deweloperów zazwyczaj trzeba napisać kod dostępu do danych.It eliminates the need for most of the data-access code that developers usually need to write. Jądro EF obsługuje wiele baz danych, zobacz dostawcy bazy danych szczegółowe informacje.EF Core supports many database engines, see Database Providers for details.

Jeśli chcesz dowiedzieć się przez pisania kodu, zalecamy jednego z naszych wprowadzenie przewodniki ułatwiające rozpoczęcie pracy z EF Core.If you like to learn by writing code, we'd recommend one of our Getting Started guides to get you started with EF Core.

Najnowsza wersja: EF Core 2.0Latest version: EF Core 2.0

Jeśli znasz podstawowe EF i chcesz przejść bezpośrednio do szczegółów nowej wersji:If you are familiar with EF Core and want to jump straight into the details of the new version:

Pobierz program Entity Framework CoreGet Entity Framework Core

Zainstaluj pakiet NuGet dostawcy bazy danych, którego chcesz użyć.Install the NuGet package for the database provider you want to use. Np.E.g. Aby zainstalować dostawcy programu SQL Server w aplikacji dla wielu platform przy użyciu dotnet narzędzia w wierszu polecenia:to install the SQL Server provider in cross-platform development using dotnet tool in the command line:

dotnet add package Microsoft.EntityFrameworkCore.SqlServer

Lub w programie Visual Studio przy użyciu konsoli Menedżera pakietów:Or in Visual Studio, using the Package Manager Console:

Install-Package Microsoft.EntityFrameworkCore.SqlServer

Zobacz dostawcy bazy danych uzyskać informacji o dostępnych dostawców i instalowanie Core EF bardziej szczegółowe kroki instalacji.See Database Providers for information on available providers and Installing EF Core for more detailed installation steps.

ModelThe Model

Podstawowych EF dostępu do danych jest wykonywane przy użyciu modelu.With EF Core, data access is performed using a model. Model składa się z klas jednostek i pochodne kontekst reprezentujący sesji z bazy danych, umożliwiając zapytania i zapisać dane.A model is made up of entity classes and a derived context that represents a session with the database, allowing you to query and save data. Zobacz tworzenia modelu Aby dowiedzieć się więcej.See Creating a Model to learn more.

Można wygenerować model z istniejącej bazy danych, ręcznie kod modelu do dopasowania bazy danych lub użyj EF migracji do tworzenia bazy danych z modelu (i rozwijać go zgodnie z modelem zmienia się wraz z upływem czasu).You can generate a model from an existing database, hand code a model to match your database, or use EF Migrations to create a database from your model (and evolve it as your model changes over time).

using Microsoft.EntityFrameworkCore;
using System.Collections.Generic;

namespace Intro
{
    public class BloggingContext : DbContext
    {
        public DbSet<Blog> Blogs { get; set; }
        public DbSet<Post> Posts { get; set; }

        protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
            optionsBuilder.UseSqlServer(@"Server=(localdb)\mssqllocaldb;Database=MyDatabase;Trusted_Connection=True;");
        }
    }

    public class Blog
    {
        public int BlogId { get; set; }
        public string Url { get; set; }
        public int Rating { get; set; }
        public List<Post> Posts { get; set; }
    }

    public class Post
    {
        public int PostId { get; set; }
        public string Title { get; set; }
        public string Content { get; set; }

        public int BlogId { get; set; }
        public Blog Blog { get; set; }
    }
}

Wykonywanie zapytaniaQuerying

Wystąpienia klas jednostki są pobierane z bazy danych przy użyciu języka zapytań zintegrowanym (LINQ).Instances of your entity classes are retrieved from the database using Language Integrated Query (LINQ). Zobacz danych zapytań Aby dowiedzieć się więcej.See Querying Data to learn more.

using (var db = new BloggingContext())
{
    var blogs = db.Blogs
        .Where(b => b.Rating > 3)
        .OrderBy(b => b.Url)
        .ToList();
}

Zapisywanie danychSaving Data

Dane są tworzone, usunięte i zmodyfikowane w bazie danych za pomocą wystąpień klas jednostek.Data is created, deleted, and modified in the database using instances of your entity classes. Zobacz zapisywania danych Aby dowiedzieć się więcej.See Saving Data to learn more.

using (var db = new BloggingContext())
{
    var blog = new Blog { Url = "http://sample.com" };
    db.Blogs.Add(blog);
    db.SaveChanges();
}