Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Návod
Tento obsah je výňatek z eBooku, architektury mikroslužeb .NET pro kontejnerizované aplikace .NET, které jsou k dispozici na .NET Docs nebo jako zdarma ke stažení PDF, které lze číst offline.
I když .NET 8 nabízí významné výhody pro nové aplikace a vzory aplikací, rozhraní .NET Framework bude i nadále dobrou volbou pro mnoho stávajících scénářů.
Migrace existujících aplikací přímo do kontejneru Windows Serveru
Kontejnery Dockeru můžete chtít použít jen ke zjednodušení nasazení, i když nevytváříte mikroslužby. Například možná chcete vylepšit pracovní postup DevOps pomocí Dockeru – kontejnery vám můžou poskytnout lépe izolovaná testovací prostředí a také eliminovat problémy s nasazením způsobenými chybějícími závislostmi při přechodu do produkčního prostředí. V takových případech, i když nasazujete monolitickou aplikaci, je vhodné použít Docker a Kontejnery Windows pro aktuální aplikace .NET Framework.
Ve většině případů pro tento scénář nebudete muset migrovat stávající aplikace do .NET 8; Můžete použít kontejnery Dockeru, které zahrnují tradiční rozhraní .NET Framework. Doporučeným přístupem je ale použití .NET 8 při rozšiřování existující aplikace, jako je například zápis nové služby v ASP.NET Core.
Použití knihoven .NET třetích stran nebo balíčků NuGet, které nejsou dostupné pro .NET 8.
Knihovny třetích stran rychle přijímají .NET Standard, což umožňuje sdílení kódu napříč všemi variantami .NET, včetně .NET 8. Díky rozhraní .NET Standard 2.0 a novějším se kompatibilita rozhraní API v různých architekturách výrazně zvětšila. Dokonce i novější aplikace .NET Core 2.x a novější můžou přímo odkazovat na stávající knihovny rozhraní .NET Framework (viz .NET Framework 4.6.1 podporující .NET Standard 2.0).
Kromě toho sada Windows Compatibility Pack rozšiřuje plochu rozhraní API dostupnou pro .NET Standard 2.0 ve Windows. Tento balíček umožňuje překompilování většiny existujícího kódu na .NET Standard 2.x s minimálními nebo žádnými úpravami, aby běžel ve Windows.
Přesto s výjimečným pokrokem od .NET Standard 2.0 a .NET Core 2.1 nebo novějších mohou existovat případy, kdy určité balíčky NuGet potřebují ke spuštění Windows a nemusí podporovat .NET Core nebo novější. Pokud jsou tyto balíčky pro vaši aplikaci důležité, budete muset použít rozhraní .NET Framework v kontejnerech Windows.
Použití technologií .NET, které nejsou k dispozici pro .NET 8
Některé technologie rozhraní .NET Framework nejsou v .NET 8 dostupné. Některé z nich mohou být k dispozici v pozdějších verzích, ale jiné se nevejdou do nových vzorů aplikací, na které cílí .NET Core, a nemusí být nikdy dostupné.
Následující seznam ukazuje většinu technologií, které nejsou dostupné v .NET 8:
ASP.NET webových formulářů. Tato technologie je k dispozici pouze v rozhraní .NET Framework. V současné době se neplánují přenést webové formuláře ASP.NET do .NET nebo novější.
Služby související s pracovním postupem Windows Workflow Foundation (WF), Workflow Services (WCF + WF v jedné službě) a datové služby WCF (dříve označované jako ADO.NET Data Services) jsou k dispozici pouze v rozhraní .NET Framework. V současné době neexistuje žádný plán, jak je přenést do .NET 8.
Kromě technologií uvedených v oficiálním plánu .NET mohou být další funkce přeneseny na novou sjednocenou platformu .NET. Můžete zvážit účast v diskuzích na GitHubu, aby váš hlas mohl být slyšet. A pokud si myslíte, že něco chybí, vytvořte nový problém v úložišti dotnet/runtime Na GitHubu.
Použití platformy nebo rozhraní API, které nepodporuje .NET 8
Některé platformy Microsoftu a třetích stran nepodporují .NET 8. Některé služby Azure například poskytují sadu SDK, která ještě není k dispozici ke spotřebě v .NET 8. Většina sad Azure SDK by se nakonec měla přenést do .NET 8/.NET Standard, ale některé nemusí z několika důvodů. Dostupné sady Azure SDK najdete na stránce nejnovějších vydaných verzí sady Azure SDK .
Do té doby, pokud jakákoli platforma nebo služba v Azure stále nepodporuje rozhraní .NET 8 s jeho klientským rozhraním API, můžete použít ekvivalentní rozhraní REST API ze služby Azure nebo klientské sady SDK v rozhraní .NET Framework.
Přenos existující aplikace ASP.NET do .NET 8
.NET Core je revoluční krok vpřed od rozhraní .NET Framework. Nabízí řadu výhod oproti rozhraní .NET Framework na celé desce od produktivity až po výkon a od podpory napříč platformami až po spokojenost vývojářů.
Dodatečné zdroje
Základy .NET
https://learn.microsoft.com/dotnet/fundamentalsPřenos projektů do .NET 5
https://learn.microsoft.com/events/dotnetconf-2020/porting-projects-to-net-5Příručka k .NET v Dockeru
https://learn.microsoft.com/dotnet/core/docker/introduction