Programování

Co je nového v Microsoft .Net Framework 4.8

Společnost Microsoft vydala .Net Framework 4.8, nejnovější verzi rámce společnosti pro vývoj aplikací pro Windows. Tato aktualizace přináší řadu oprav chyb, oprav zabezpečení a vylepšení Common Language Runtime, ASP.Net, Windows Forms, Windows Presentation Foundation a Windows Communication Foundation.

Kde stáhnout .Net Framework 4.8

Produkční verzi .Net Framework si můžete stáhnout z webu .Net společnosti Microsoft.

Aktuální verze: Nové funkce v .Net Framework 4.8

Vydání 18. dubna 2019 .Net Framework 4.8 obsahuje následující nové funkce a vylepšení:

  • Pro NGEN (Native Image Generator) již obrázky v .Net Framework nemají zapisovatelné a spustitelné sekce. To snižuje povrchovou plochu dostupnou útokům, které se pokoušejí spustit libovolný kód úpravou adres paměti NGEN.
  • Pro všechny sestavy, ať už načtené z disku nebo ze sítě, je nyní zahájeno skenování proti malwaru. Dříve běhový modul .Net inicioval pouze skenování (programem Windows Defender a softwarem proti malwaru třetích stran implementujícím rozhraní Antimalware Scan Interface) sestav načtených z disku.
  • Kompilátor .Net Framework 4.8 JIT je založen na .Net Core 2.1. Opravy chyb a optimalizace založené na generování kódu z .Net Core 2.1 jsou nyní k dispozici v .Net Framework.
  • V BCL (knihovna základních tříd) byla vylepšena externí knihovna komprese Zlib, počet finalizací objektů, ke kterým dochází v důsledku použití X509Certificate2 a souvisejících typů, byl snížen a bylo přidáno API pro získání miniatur s volajícím - zadaný algoritmus digestu.
  • Kromě toho BCL v .Net Framework 4.8 snižuje dopad FIPS (Federal Information Processing Standards) na kryptografii. Vzhledem k tomu, že .Net Framework 2.0, třídy poskytovatelů kryptografických služeb vyvolaly výjimku, když jsou kryptografické knihovny konfigurovány v režimu FIPS. S .Net 4.8 tyto výjimky již nebudou ve výchozím nastavení vyvolány.
  • Pro Windows Forms jsou nabízena vylepšení přístupnosti, která zlepšují komunikaci dat aplikací se zrakově postiženými.
  • V ASP.Net byl opraven problém zahrnující zpracování vícehodnotových hlaviček HTTP, které mohou ovlivnit zpracování vícedílných dat.
  • Byly opraveny problémy s CLR (Common Language Runtime), kdy byly jako EventListeners odeslány nesprávné hodnoty.
  • Povolené štítky ve Windows Forms jsou nyní vždy vykresleny pomocí barvy textu s vysokým kontrastem, když je povolen režim vysokého kontrastu. To ovlivní aplikace překompilované na cíl .NET Framework 4.8.
  • Algoritmus hash používaný ke generování kontrolních součtů souborů XOML při vytváření projektů se soubory XOML byl změněn. Vývojáři mohou stále používat předchozí algoritmus.
  • Byl upraven hashovací algoritmus pro výpočet klíčů do mezipaměti interní paměti. Vývojáři mohou stále používat předchozí algoritmus.
  • Byl opraven únik paměti, který ovlivnil HttpWebRequest při komunikaci se serverem HTTPS prostřednictvím serveru proxy.
  • V systému Windows Presentation Foundation byl opraven nevracení paměti, ke kterému došlo při odebírání datových položek z nadřazených kolekcí, když byl přítomen UIAutomation.
  • Windows Presentation Foundation přidala podporu pro Per-Monitor V2 DPI Awareness a Mixed-Mode DPI.
  • Ve Windows Communication Foundation byl opraven problém s přístupností, který způsobil, že ovládací prvky ComboBox byly nesprávně tematizovány ve vysoce kontrastních tématech.
  • V Windows Communication Foundation je ServiceHealthBehavior uváděn jako chování služby přidané do kolekce ServiceDescription.Behaviors. Může vrátit stav stavu služby pomocí kódů odpovědi HTTP a povolit zveřejnění stavu služby.

Předchozí verze: Nové funkce v .NET Framework 4.7.2

Injekce závislostí, které jsou již populární v technologiích, jako je Spring Framework, umožňuje jednomu objektu dodávat závislosti jiného objektu. .NET Framework 4.7.2 usnadňuje použití této funkce ve webových formulářích ASP.net. Jsou podporovány injektory založené na setteru, rozhraní a konstruktoru a lze připojit další rámce pro injektáž závislostí.

Mezi další nové funkce v .Net Framework 4.7.2 patří:

  • The SameSite Vlastnost je přidána do webového rámce ASP.Net, aby se tvrdilo, že soubor cookie by neměl být odesílán s požadavky mezi weby. Cílem SameSite atributem je snížit únik informací a chránit před útoky padělání mezi weby. Vlastnost je přidána HttpCookieType. Je také součástí souborů cookie FormsAuthentication a SessionState.
  • K vylepšení zabezpečení a dodržování předpisů je ověřování Azure Active Directory podporováno prostřednictvím interaktivního ověřovacího klíčového slova přidaného k vícefaktorovému ověřování. Jedná se o rozšíření připojovacího řetězce SqlClient.
  • API se přidávají do standardních typů kolekcí, což umožňuje nové funkce, jako jsou konstruktory HashSet, které umožňují sestavení HashSetů s kapacitou. To nabízí výkonnostní výhodu, když je známo, jaká je velikost HashSet.
  • Kryptografická vylepšení zjednodušují vytváření objektů RSA a DSA a volání ImportParameters.
  • Windows Presentation Foundation (WPF) přidal StaticResource funkce referencí umožňující informovat diagnostického asistenta, když a StaticResource odkaz je vyřešen. Například diagnostický asistent, jako je například nástroj Visual-Edit-and-Continue, může chtít aktualizovat použití prostředku, když se změní nebo nahradí hodnotu ve slovníku prostředků.
  • The WorkflowDesignerColors byla přidána třída pro vylepšení uživatelského rozhraní v režimu s vysokým kontrastem.
  • Prostřednictvím dekomprese Zlib byla vylepšena propustnost pro dekompresi archivů Zip pomocí nativní implementace Zip.
  • Úlohy .NET Framework nyní mohou generovat požadavky na podepisování certifikátů, což umožňuje postupné generování požadavků do existujících nástrojů.
  • Byla přidána podpora na monitor pro aplikace Windows Presentation Foundation a HDPI-aware VSTO (Visual Studio Tools for Office) nasazené pomocí ClickOnce.
  • Vylepšena podpora pro .Net Standard 2.0.
  • Diagnostiční asistenti mohou vyhledat ResourceDictionaries vytvořené z daného zdrojového identifikátoru URI.

Předchozí verze: Co je nového v .Net Framework 4.7.1

S vydáním .Net Framework 4.7.1, které společnost Microsoft vydala v polovině října 2017, vývojová platforma získala zásadní vylepšení v uvolňování paměti, zabezpečení a konfiguraci aplikací.

Chcete-li zvýšit výkon alokace paměti, zejména u alokací haldy velkých objektů, architektonická změna sběrače odpadu rozdělí alokaci haldy na hromady malých a velkých objektů. Aplikace, které vytvářejí spoustu alokací haldy velkých objektů, by se měly setkat se snížením sporu o zámek přidělení a lepším výkonem.

Tato aktualizace také přidává zabezpečené možnosti hash pro ověřování formulářů ASP.Net, včetně SHA-2 (Secure Hash Algorithm), silnějšího nástupce SHA-1. Z důvodu kompatibility je SHA-1 stále výchozí volbou. SHA-2 je také podporován pro Message.HashAlgorithm, který určuje hashový algoritmus používaný frontou zpráv při ověřování.

Nové konfigurační nástroje v .Net 4.7.1 umožňují vývojářům vkládat a vytvářet konfigurace pro aplikace za běhu. Konfigurační data lze převzít ze zdrojů mimo konfigurační soubor; v předchozích verzích .Net je konfigurace statická. Prostřednictvím konfiguračních nástrojů jsou aplikace schopny aplikovat na část konfigurace vlastní sadu sestavovacích modulů. Tvůrci mohou upravovat konfigurační data obsažená v konfigurační sekci nebo je vytvářet úplně od začátku, dokonce mohou čerpat nová data ze zdrojů jiných než statické soubory.

Mezi další funkce upgradu patří:

  • Podpora specifikace .Net Standard 2.0, která obsahuje sadu API sdílených více implementacemi .Net.
  • Vylepšení přístupnosti ve WPF (Windows Presentation Foundation) a Windows Forms, včetně vylepšení vysokého kontrastu, vylepšených vzorů uživatelského rozhraní a vylepšených zkušeností s nástroji, jako je Narrator.
  • Podpora vizuální diagnostiky ve WPF, která umožňuje použití nástrojů pro analýzu vizuálních stromů XAML.
  • Podpora kompilátoru pro ReadOnlyReferences v jazyce C # 7.2, pro předávání proměnných odkazem, ale bez vystavení dat změnám.
  • Rozhraní API pro detekci funkce běhového modulu k určení, zda modul runtime podporuje konkrétní funkci.
  • Serializovatelné SystemValueTuple typy, z nichž by se měla usnadnit migraceSystem.Tuple k nové syntaxi n-tice v C # 7.0 a Visual Basic 15.5.
  • Rozhraní ASP.Net API poskytující standardizovaný způsob vytváření HttpCookie objekt z řetězce a zachytit vlastnosti souboru cookie, jako je datum vypršení platnosti a cesta.
  • Funkce prováděcího kroku v ASP.Net s názvem ExecutionStepInvoker, který umožňuje vývojářům spouštět kroky provádění uvnitř jejich kódu, nikoli v předdefinovaném kanálu ASP.Net. Tato funkce je určena pro knihovny zabývající se tokem provádění aplikací.