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.0
Środowisko uruchomieniowe EF 6.5.0 zostało wydane w programie 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 (współautor 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 zostało wydane do menedżera 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 menedżera 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. Kilka poprawek błędów i ulepszeń wprowadzono także dzięki członkom społeczności. Aby uzyskać szczegółowe informacje, zobacz problemy zamknięte w każdym kamieniu milowym 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 formatami Roslyn i NuGet PackageReference.
- Dodano narzędzie
ef6.exe
do włączania, dodawania i stosowania migracji z zestawów oraz tworzenia skryptów. Zastąpi ono narzędziemigrate.exe
.
Obsługa projektanta EF
Obecnie nie ma obsługi korzystania z projektanta EF bezpośrednio w projektach platformy .NET Core lub .NET Standard lub w projekcie .NET Framework w stylu zestawu 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 zasób osadzony (lub kopiuje go jako pliki w folderze wyjściowym, w zależności od ustawienia (Metadata Artifact Processing) Przetwarzanie artefaktów metadanych w pliku EDMX). Aby uzyskać więcej informacji na temat tej konfiguracji, zapoznaj się z przykładowym plikiem EDMX platformy .NET Core.
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.