Co nowego na platformie EF 6

Zdecydowanie zalecamy korzystanie z najnowszej wydanej wersji platformy Entity Framework, aby móc korzystać z najnowszych funkcji i najwyższej stabilności. Jednak zdajemy sobie sprawę, że może być konieczne użycie poprzedniej wersji lub że chcesz poeksperymentować z nowymi ulepszeniami w najnowszej wersji wstępnej. Aby zainstalować określone wersje platformy EF, zobacz Pobieranie platformy Entity Framework.

EF 6.5.2

Środowisko uruchomieniowe EF 6.5.2 zostało opublikowane w serwisie NuGet w kwietniu 2026 r. Zobacz informacje o wydaniu na GitHub. Istotne zmiany:

  • Zgodność z platformą .NET 10 — przenosi poprawkę dotyczącą natywnej obsługi typu Span w .NET 10, dzięki czemu EF6 nadal działa prawidłowo w środowisku .NET 10 (#2365).
  • Microsoft.Data.SqlClient został zaktualizowany do wersji 5.1.6 (#2284).
  • Naprawiono HierarchyId analizowanie liczb spoza Int32 zakresu (#2362).
  • Zezwól na uruchamianie narzędzia ef6 na najnowszym zestawie SDK .NET (#2396).

EF 6.5.1

Środowisko uruchomieniowe EF 6.5.1 zostało udostępnione w serwisie NuGet w czerwcu 2024 r. Ta wersja poprawki naprawia uszkodzony pakiet NuGet w wersji 6.5.0 (#2263).

EF 6.5.0

Środowisko EF 6.5.0 zostało udostępnione na platformie NuGet w czerwcu 2024 r. Głównym celem programu EF 6.5 jest uwzględnienie nowego dostawcy programu SQL Server/ usługi Azure SQL Database. Zobacz listę ważnych poprawek w witrynie GitHub. Oto kilka najważniejszych:

  • Nowy dostawca programu SQL Server / Azure SQL Database (opracowany przez społeczność) — Microsoft.EntityFramework.SqlServer. Ten nowy dostawca używa nowoczesnego klienta programu SQL Server Microsoft.Data.SqlClient. Aby uzyskać więcej informacji na temat konfiguracji tego dostawcy, zobacz Microsoft.EntityFramework.SqlServer Guide (Przewodnik po programie Microsoft.EntityFramework.SqlServer).
  • Narzędzie ef6 zostało zaktualizowane tak, aby obsługiwało tylko platformę .NET 6 i nowsze. Zaktualizowano go również w celu obsługi odczytu z plików app.config i obsługi systemu Windows ARM64.
  • Sterownik System.Data.SqlClient został zaktualizowany do wersji 4.8.6.

EF 6.4.0

Środowisko uruchomieniowe EF 6.4.0 wydano w NuGet w grudniu 2019 r. Głównym celem wersji EF 6.4 jest udoskonalenie funkcji i scenariuszy dostarczonych w wersji EF 6.3. Zobacz listę ważnych poprawek w witrynie GitHub.

EF 6.3.0

Środowisko uruchomieniowe EF 6.3.0 zostało wydane do NuGet we wrześniu 2019 r. Głównym celem tej wersji było ułatwienie migracji istniejących aplikacji korzystających z platformy EF 6 do platformy .NET Core 3.0. Dzięki członkom społeczności wprowadzono także wiele poprawek błędów i ulepszeń. Aby uzyskać szczegółowe informacje, zobacz problemy zamknięte w każdym kamieniu milowym w wersji 6.3.0. Oto kilka najważniejszych:

  • Obsługa platformy .NET Core 3.0
    • Oprócz platformy .NET Framework 4.x. pakiet EntityFramework jest teraz także przeznaczony dla platformy .NET Standard 2.1.
    • Oznacza to, że wersja EF 6.3 jest wieloplatformowa i obsługiwana także w systemach innych niż Windows, np. Linux i macOS.
    • Polecenia migracji zostały przepisane tak, aby były wykonywane poza procesem i działały z projektami w stylu zestawu SDK.
  • Obsługa identyfikatora HierarchyId programu SQL Server.
  • Ulepszona zgodność z technologiami Roslyn i NuGet PackageReference.
  • Dodano narzędzie ef6.exe do włączania, dodawania, tworzenia skryptów i stosowania migracji z zestawów. Zastąpi ono narzędzie migrate.exe.

Obsługa projektanta EF

Obecnie nie ma obsługi korzystania z projektanta EF bezpośrednio w projektach .NET lub .NET Standard ani w projektach .NET Framework w stylu SDK.

Możesz obejść to ograniczenie, dodając plik EDMX i wygenerowane klasy dla jednostek i klasy dbContext jako połączone pliki do projektu platformy .NET Core 3.0 lub .NET Standard 2.1 w tym samym rozwiązaniu.

Połączone pliki będą wyglądać następująco w pliku projektu:

<ItemGroup>
  <EntityDeploy Include="..\EdmxDesignHost\Entities.edmx" Link="Model\Entities.edmx" />
  <Compile Include="..\EdmxDesignHost\Entities.Context.cs" Link="Model\Entities.Context.cs" />
  <Compile Include="..\EdmxDesignHost\Thing.cs" Link="Model\Thing.cs" />
  <Compile Include="..\EdmxDesignHost\Person.cs" Link="Model\Person.cs" />
</ItemGroup>

Pamiętaj, że plik EDMX jest połączony z akcją tworzenia EntityDeploy. Jest to specjalne zadanie MSBuild (teraz dołączone do pakietu EF 6.3), które dodaje model EF do zestawu docelowego jako osadzone zasoby (lub kopiuje go jako pliki w folderze wyjściowym, w zależności od ustawienia Przetwarzanie artefaktów metadanych w pliku EDMX). Aby uzyskać więcej informacji na temat sposobu konfigurowania tej konfiguracji, zobacz nasz przykład EDMX .NET.

Ostrzeżenie: upewnij się, że projekt w starym stylu (tj. w stylu innym niż zestaw SDK) programu .NET Framework definiujący „prawdziwy” plik edmx znajduje się przed projektem definiującym połączenie wewnątrz pliku sln. W przeciwnym razie po otwarciu pliku edmx w projektancie zostanie wyświetlony komunikat o błędzie „Platforma Entity Framework nie jest dostępna na platformie docelowej aktualnie określonej dla projektu. Możesz zmienić platformę docelową projektu lub edytować model w narzędziu XmlEditor”.

Poprzednie wydania

Strona Poprzednie wydania zawiera archiwum wszystkich poprzednich wersji platformy EF i głównych funkcji, które zostały wprowadzone w każdej wersji.