Funkcje zawarte w programie EF Core 1.0Features included in EF Core 1.0

PlatformyPlatforms

.NET Framework 4.5.1.NET Framework 4.5.1

Obejmuje konsolę, WPF, WinForms, platformy ASP.NET 4, itd.Includes Console, WPF, WinForms, ASP.NET 4, etc.

.NET standard 1.3.NET Standard 1.3

W tym platformy ASP.NET Core przeznaczone dla .NET Framework i .NET Core w Windows, OS x i Linux.Including ASP.NET Core targeting both .NET Framework and .NET Core on Windows, OSX, and Linux.

ModelowanieModelling

Podstawowego modelowaniaBasic modelling

Oparte na jednostkach POCO za pomocą właściwości get/set popularnych typów skalarnych (int, stringitp.).Based on POCO entities with get/set properties of common scalar types (int, string, etc.).

Relacje i właściwości nawigacjiRelationships and navigation properties

W modelu, w oparciu o klucz obcy można określić jeden do wielu i relacje jeden do zero lub jeden.One-to-many and One-to-zero-or-one relationships can be specified in the model based on a foreign key. Właściwości nawigacji typów prostych kolekcji lub odwołania może być skojarzony z tych relacji.Navigation properties of simple collection or reference types can be associated with these relationships.

Konwencje wbudowaneBuilt-in conventions

Te tworzenie początkowej model oparty na kształcie klas jednostek.These build an initial model based on the shape of the entity classes.

Interfejs Fluent APIFluent API

Zezwala na zastąpienie OnModelCreating metody na kontekst dodatkowo skonfigurować modelu, która została wykryta przez Konwencję.Allows you to override the OnModelCreating method on your context to further configure the model that was discovered by convention.

Adnotacje danychData annotations

To atrybutów, można dodać do swojej klasy/właściwości jednostki, które wpływają na modelu platformy EF.Are attributes that can be added to your entity classes/properties and will influence the EF model. Na przykład dodanie [Required] umożliwi EF wiedzieć, że właściwość jest wymagana.For example, adding [Required] will let EF know that a property is required.

Relacyjne Mapowanie tabeliRelational Table mapping

Umożliwia jednostek, które mają być mapowane do tabele/kolumny.Allows entities to be mapped to tables/columns.

Generowanie wartości kluczaKey value generation

W tym generowania po stronie klienta i generowanie bazy danych.Including client-side generation and database generation.

Baza danych generowane wartościDatabase generated values

Zezwala na wartości, które mają być generowane przez bazę danych na wstawiania (wartości domyślne) lub aktualizacji (kolumn obliczanych).Allows for values to be generated by the database on insert (default values) or update (computed columns).

Sekwencje w programie SQL ServerSequences in SQL Server

Umożliwia sekwencji obiektów zdefiniowanych w modelu.Allows for sequence objects to be defined in the model.

Unikatowych ograniczeńUnique constraints

Umożliwia określenie klucze alternatywne i możliwość definiowania relacji przeznaczonych tego klucza.Allows for the definition of alternate keys and the ability to define relationships that target that key.

IndeksyIndexes

Definiowanie indeksów w modelu automatycznie wprowadza indeksy w bazie danych.Defining indexes in the model automatically introduces indexes in the database. Unikatowe indeksy są również obsługiwane.Unique indexes are also supported.

Właściwości stanu w tleShadow state properties

Umożliwia właściwości zdefiniowanych w modelu, które nie są deklarowane i nie są przechowywane w klasie .NET, ale mogą być śledzone i aktualizowane przez platformę EF Core.Allows for properties to be defined in the model that are not declared and are not stored in the .NET class but can be tracked and updated by EF Core. Często używane do właściwości klucza obcego, gdy udostępnianie w obiekt nie jest wymagana.Commonly used for foreign key properties when exposing these in the object is not desired.

Tabela wg hierarchii dziedziczenia wzorzecTable-Per-Hierarchy inheritance pattern

Umożliwia jednostek w hierarchii dziedziczenia do zapisania pojedynczej tabeli, aby zidentyfikować ich typ jednostki dla danego rekordu w bazie danych przy użyciu kolumna dyskryminatora.Allows entities in an inheritance hierarchy to be saved to a single table using a discriminator column to identify they entity type for a given record in the database.

Walidacja modeluModel validation

Wykrywa nieprawidłowe wzorców w modelu i zawiera komunikaty o błędach pomocne.Detects invalid patterns in the model and provides helpful error messages.

Śledzenie zmianChange tracking

Śledzenie zmian migawkiSnapshot change tracking

Umożliwia zmiany w jednostkach, aby zostało wykryte automatycznie przez porównanie bieżącego stanu pierwotnego stanu kopii (Migawka).Allows changes in entities to be detected automatically by comparing current state against a copy (snapshot) of the original state.

Śledzenie zmian powiadomieńNotification change tracking

Umożliwia jednostek do powiadamiania śledzenie zmian wartości właściwości są modyfikowane.Allows your entities to notify the change tracker when property values are modified.

Uzyskiwanie dostępu do śledzonych stanuAccessing tracked state

Za pomocą DbContext.Entry i DbContext.ChangeTracker.Via DbContext.Entry and DbContext.ChangeTracker.

Dołączanie odłączonych jednostek/wykresówAttaching detached entities/graphs

Nowy DbContext.AttachGraph interfejs API pomaga ponownie podłącz jednostek do kontekstu w celu zapisania nowych/zmodyfikowanych jednostek.The new DbContext.AttachGraph API helps re-attach entities to a context in order to save new/modified entities.

Zapisywanie danychSaving data

Podstawowa funkcja zapisywaniaBasic save functionality

Umożliwia zmiany wystąpień jednostek w celu jego utrwalenia w bazie danych.Allows changes to entity instances to be persisted to the database.

Optymistyczna współbieżnośćOptimistic Concurrency

Chroni przed zastępowanie zmian wprowadzonych przez innego użytkownika, ponieważ dane została pobrana z bazy danych.Protects against overwriting changes made by another user since data was fetched from the database.

Async SaveChangesAsync SaveChanges

Zwolnić bieżącego wątku przetwarzanie innych żądań, gdy baza danych przetwarza poleceń wydawanych z SaveChanges.Can free up the current thread to process other requests while the database processes the commands issued from SaveChanges.

Transakcje bazy danychDatabase Transactions

Oznacza, że SaveChanges jest zawsze niepodzielne (tzn. jej albo całkowicie zakończy się pomyślnie, lub są wprowadzane żadne zmiany w bazie danych).Means that SaveChanges is always atomic (meaning it either completely succeeds, or no changes are made to the database). Istnieją również transakcji powiązanych interfejsów API, aby zezwolić na udostępnianie transakcji między wystąpieniami kontekstu itp.There are also transaction related APIs to allow sharing transactions between context instances etc.

Relacyjne: Przetwarzanie wsadowe instrukcjiRelational: Batching of statements

Zapewnia lepszą wydajność, przetwarzanie wsadowe się wielu poleceń WSTAWIANIA/AKTUALIZOWANIA/usuwania do pojedynczego obie strony do bazy danych.Provides better performance by batching up multiple INSERT/UPDATE/DELETE commands into a single roundtrip to the database.

ZapytanieQuery

Podstawowa pomoc techniczna LINQBasic LINQ support

Zapewnia możliwość korzystania z LINQ do pobierania danych z bazy danych.Provides the ability to use LINQ to retrieve data from the database.

Ocena mieszane klient serwerMixed client/server evaluation

Umożliwia zapytaniom zawiera logikę, która nie może być ocenione w bazie danych, a w związku z tym muszą być oceniane, po pobraniu danych do pamięci.Enables queries to contain logic that cannot be evaluated in the database, and must therefore be evaluated after the data is retrieved into memory.

NoTrackingNoTracking

Zapytania umożliwia szybsze wykonywanie zapytania, gdy kontekst nie jest konieczne monitorowanie zmian w wystąpień jednostek (jest to przydatne, gdy wyniki są tylko do odczytu).Queries enables quicker query execution when the context does not need to monitor for changes to the entity instances (this is useful if the results are read-only).

Wczesne ładowanieEager loading

Udostępnia Include i ThenInclude metodami do identyfikowania powiązanych danych, które również mają być pobierane, podczas wykonywania zapytania.Provides the Include and ThenInclude methods to identify related data that should also be fetched when querying.

Zapytania asynchroniczneAsync query

Można zwolnić miejsce na bieżącego wątku (i jego skojarzone zasoby) do przetworzenia inne żądania, gdy baza danych przetwarza zapytania.Can free up the current thread (and it's associated resources) to process other requests while the database processes the query.

Pierwotne zapytania SQLRaw SQL queries

Udostępnia DbSet.FromSql metodę SQL pierwotne zapytania można pobrać danych.Provides the DbSet.FromSql method to use raw SQL queries to fetch data. Te zapytania może składać się także na temat korzystania z LINQ.These queries can also be composed on using LINQ.

Zarządzanie schematami bazy danychDatabase schema management

Baza danych tworzenia/usuwania interfejsów APIDatabase creation/deletion APIs

Przede wszystkim są przeznaczone do testowania, które chcesz szybko tworzyć/usuwać bazy danych bez używania migracji.Are mostly designed for testing where you want to quickly create/delete the database without using migrations.

Migracje relacyjnej bazy danychRelational database migrations

Zezwalaj na schemat relacyjnej bazy danych w rozwój nadgodzinach jako zmiany modelu.Allow a relational database schema to evolve overtime as your model changes.

Odtwarzanie z bazy danychReverse engineer from database

Szkielety mechanizmów modelu platformy EF oparte na istniejący schemat relacyjnej bazy danych.Scaffolds an EF model based on an existing relational database schema.

Dostawcy baz danychDatabase providers

SQL ServerSQL Server

Łączy się z programu Microsoft SQL Server 2008 lub nowszym.Connects to Microsoft SQL Server 2008 onwards.

Bazy danych SQLiteSQLite

Nawiązuje połączenie z bazą danych SQLite 3.Connects to a SQLite 3 database.

W pamięciIn-Memory

Jest umożliwiających łatwe testowanie bez połączenia z prawdziwą bazą danych.Is designed to easily enable testing without connecting to a real database.

3 dostawców3rd party providers

Kilku dostawców są dostępne dla innych baz danych.Several providers are available for other database engines. Zobacz dostawcy baz danych pełną listę.See Database Providers for a complete list.