Novinky v rozhraní .NET Framework 4

Toto téma obsahuje informace o klíčových vlastnostech a vylepšeních v .NET Framework verze 4. Toto téma neposkytuje úplné informace o všech nových vlastnostech a je náchylné ke změnám.

.NET Framework 4 uvádí vylepšený model zabezpečení. Další informace naleznete v tématu Změny zabezpečení v rozhraní .NET Framework 4.

Další nové funkce a zdokonalení v .NET Framework 4 jsou popsány v následujících částech:

  • Nasazení a kompatibilita aplikace

  • Hlavní nové vlastnosti a vylepšení

  • Managed Extensibility Framework

  • Paralelní výpočty

  • Síťové služby

  • Web

  • Klient

  • Data

  • Windows Communication Foundation

  • Windows Workflow Foundation

Seznamy nových oborů názvů, nových typů a nových členů přidaných do stávajících typů najdete v časti Nové typy a členové v rozhraní .NET Framework 4.

Visual Studio 2010 Service Pack 1 (SP1) obsahuje aktualizaci produktu .NET Framework 4.

Nasazení a kompatibilita aplikace

.NET Framework 4 je vysoce kompatibilní s aplikacemi, které jsou vytvořeny v předchozích verzích rozhraní .NET Framework, s výjimkou některých změn, které byly provedeny z důvodu zvýšení zabezpečení, dodržování norem, správnosti, spolehlivosti a výkonu.

.NET Framework 4 automaticky nepoužívá svou verzi modulu CLR (Common Language Runtime) ke spuštění aplikací vytvořených ve starších verzích rozhraní .NET Framework. Pro spouštění starších aplikací pomocí .NET Framework 4 je nutné kompilovat vaší aplikací s cílovou verzí rozhraní .NET Framework určenou ve vlastnostech vašeho projektu v Visual Studio nebo můžete v konfiguračním souboru aplikace určit podporovaný modul runtime pomocí <supportedruntime>element.

Pokud vaše aplikace nebo komponenta nefunguje po nainstalování rozhraní .NET Framework 4, odešlete informaci o chybě na webu Microsoft Connect. Kompatibilitu můžete testovat, jak je popsáno v tématu Kompatibilita aplikace .NET framework 4, a dozvědět se o nových funkcích pomocí Návodů aplikace Visual Studio 2010 a .NET Framework 4.

Pokyny pro migraci na rozhraní .NET Framework 4 najdete v částech Průvodce migrací do rozhraní .NET Framework 4 a Kompatibilita verzí v rozhraní .NET Framework

Následující části popisují vylepšení nasazení.

Profil klienta

Profil klienta ve verzi .NET Framework 4 podporuje více platforem než v předchozích verzích a poskytuje možnost rychlého nasazení pro aplikace. Několik nových šablon projektů je nyní ve výchozím nastavení zaměřeno na profil klienta. Další informace naleznete v tématu .NET Framework Client Profile.

Souběžné spouštění v průběhu procesu

Tato funkce umožňuje aplikaci načíst a spustit více verzí rozhraní .NET Framework ve stejném procesu. Například můžete ve stejném procesu spouštět aplikace, které načítají doplňky (nebo komponenty) založené na .NET Framework 2.0 SP1 a doplňky, které jsou založeny na .NET Framework 4. Starší komponenty nadále používají starší verzi rozhraní .NET Framework a nové komponenty používají novou verzi rozhraní .NET Framework. Další informace naleznete v tématu proces souběžné spouštění.

Přenosná knihovna tříd

Při instalaci Visual Studio 2010 Service Pack 1 (SP1) a Přenosné nástroje knihovny můžete vytvořit knihovny přenosné třídy běžící na řadě platforem .NET Framework bez opětovné kompilace. Další informace naleznete v tématu Portable Class Library.

Zpět na začátek

Hlavní nové vlastnosti a vylepšení

V následujících částech jsou popsány nové vlastnosti a vylepšení poskytované modulem CLR (Common Language Runtime) a základními knihovnami tříd.

Diagnostika a výkon

Starší verze rozhraní .NET Framework neposkytují žádný způsob jak určit, zda určitá aplikační doména byla ovlivněna jinými aplikačními doménami, protože API rozhraní operačního systému a nástroje, jako je například správce úloh systému Windows byly přesné pouze na úrovni procesu. Počínaje .NET Framework 4 můžete získat odhady využití procesoru a paměti v každé aplikační doméně.

U jednotlivých aplikačních domén můžete sledovat využití CPU a paměti. Sledování prostředků aplikační domény je k dispozici prostřednictvím spravovaného a nativního hostitelského API rozhraní a trasování událostí systému Windows. Pokud je tato funkce povolena, tak shromažďuje statistiku o všech aplikačních doménách v procesu po dobu jeho trvání. Podívejte se na novou vlastnost AppDomain.MonitoringIsEnabled.

Nyní můžete jak pro diagnostické účely, tak za účelem zlepšení výkonu získat přístup k událostem systému trasování událostí pro Windows. Další informace naleznete v tématu Události CLR Trasování událostí pro Windows a Řízení protokolování rozhraní .NET Framework. Viz také Čítače výkon a in-proces Applications strana podle okraj.

Atribut System.Runtime.ExceptionServices.HandleProcessCorruptedStateExceptionsAttribute umožňuje spravovanému kódu zpracovat výjimky, které označují poškozený stav procesu.

Globalizace

Verze .NET Framework 4 poskytuje nové neutrální a specifické jazykové verze, aktualizované hodnoty vlastností, zlepšení ve zpracování řetězců a další vylepšení. Další informace naleznete v tématu Co je nového v globalizaci a lokalizaci.

Uvolňování paměti

.NET Framework 4 poskytuje zázemí pro uvolňování paměti. Tato funkce nahrazuje souběžné uvolňování paměti v předchozích verzích a poskytuje lepší výkon. Další informace naleznete v tématu Základy paměti kolekce.

Kontrakty pro kód

Kontrakty pro kód umožňují specifikovat smluvní informace, které nejsou reprezentovány samostatným podpisem metody nebo typu. Nový obor názvů System.Diagnostics.Contracts obsahuje třídy, které poskytují jazykově nezávislý způsob vyjádření kódování předpokladů ve formě omezení objektu, vstupních a výstupních podmínek. Kontrakty zlepšují testování s kontrolou za běhu, umožňují statické ověření kontraktu a podporují generování dokumentace. Další informace naleznete v tématu Kód zakázky.

Interoperabilní sestavení dostupná pouze v době návrhu

Pro nasazení aplikací, které spolupracují s objekty modelu COM již není nutné dodat primární interoperabilní sestavení (PIAs). Kompilátory v .NET Framework 4 mohou vložit informace o typu z interoperabilních sestavení tak, že vyberou pouze typy, které aplikace skutečně používá (například doplněk). Typová bezpečnost je zajištěna modulem CLR (Common Language Runtime). Více o tématu v Using COM Types in Managed Code a Podrobné pokyny: Vkládání informace o typu ze sady systém Microsoft Office „14“ sestavení (C# a Visual Basic).

Dynamické běhové prostředí

dynamic language runtime (DLR) je nové běhové prostředí, které pro dynamické jazyky přidává do CLR sadu služeb. DLR usnadňuje vývoj dynamických jazyků tak, aby mohly běžet v rozhraní .NET Framework. Přidává dynamické vlastnosti staticky napsaným jazykům. Pro podporu DLR je do rozhraní .NET Framework přidán nový jmenný prostor System.Dynamic.

Stromy výrazů jsou rozšířeny pomocí nových typů, které představují tok řízení, například System.Linq.Expressions.LoopExpression nebo System.Linq.Expressions.TryExpression. Tyto nové typy jsou používány dynamickým běhovým prostředím (DLR) a nejsou používány technologií LINQ.

Kromě toho několik nových tříd, které podporují infrastrukturu rozhraní .NET Framework bylo přidáno do jmenného prostoru System.Runtime.CompilerServices. Další informace naleznete v tématu Dynamic Language Runtime Overview.

Kovariance a Kontravariance

Několik obecných rozhraní a delegátů nyní podporuje kovarianci a kontravarianci. Další informace naleznete v tématu Covariance and Contravariance in the Common Language Runtime.

BigInteger a komplexní čísla

Nová struktura System.Numerics.BigInteger je libovolně přesný celočíselný datový typ, který podporuje všechny standardní celočíselné operace včetně bitové manipulace. Lze jej použít z libovolného jazyka rozhraní .NET Framework. Kromě toho některé nové jazyky rozhraní .NET Framework (například F# nebo IronPython) mají integrovanou podporu pro tuto strukturu.

Nová struktura System.Numerics.Complex představuje komplexní číslo, které podporuje aritmetické a trigonometrické operace s komplexními čísly.

N-tice

.NET Framework 4 poskytuje System.Tuple třídu pro vytváření objektů řazené kolekce členů, které obsahují strukturovaná data. Také poskytuje obecné třídy pro řazené kolekce členů podporující kolekce, které mají od jedné do osmi komponent (tj. od jednoprvkových množin do osmic). K podpoře objektů řazené kolekce členů, které mají devět nebo více komponent existuje obecná třída řazené kolekce členů se sedmi typy parametrů a osmý parametr libovolného typu řazené kolekce členů.

Vylepšení výčtu systému souborů

Nové metody výčtu souborů zlepšují výkon aplikací, které přistupují k velkým souborům adresáře nebo které iterují přes řádky ve velkých souborech. Další informace naleznete v tématu Postupy: Výčet souborů a adresářů.

Soubory mapované paměti

Rozhraní .NET Framework nyní podporuje memory-mapped files. Soubory mapované paměti lze použít k úpravě velmi velkých souborů a také k vytváření sdílené paměti pro mezi procesovou komunikaci.

64bitové operační systémy a procesy

64bitové operační systémy a procesy lze identifikovat pomocí Environment.Is64BitOperatingSystem nebo vlastnosti Environment.Is64BitProcess.

32bitové nebo 64bitové zobrazení registru je možné specifikovat při otevření základních klíčů pomocí výčtu Microsoft.Win32.RegistryView.

Další nové vlastnosti

Následující seznam popisuje další nové schopnosti, vymoženosti a vylepšení. Některé z nich jsou založeny na návrzích zákazníků.

  • Na podporu formátování, které dodržuje jazykové zvyklosti struktura System.TimeSpan obsahuje nové přetížení metod ToString, Parse, a TryParse, stejně jako metody ParseExact a TryParseExact.

  • Nová metoda String.IsNullOrWhiteSpace označuje zda je řetězec null, prázdný nebo obsahuje pouze prázdné znaky. Nově byly přetíženy metody String.Concat a String.Join , které zřetězují členy kolekce System.Collections.Generic.IEnumerable<T>.

  • Metoda String.Concat umožňuje řetězit každý element ve vyčíslitelné kolekci bez toho, aby je nejdříve převáděla na řetězce.

  • K dispozici jsou nově dvě vhodné metody: StringBuilder.Clear a Stopwatch.Restart.

  • Nová metoda Enum.HasFlag určuje, zda je u vypočtené hodnoty nastavená jedna či více bitových položek nebo příznaků Metoda Enum.TryParse vrací logickou hodnotu, která označuje, zda řetězec nebo celočíselná hodnota může být úspěšně syntakticky analyzována.

  • Výčet System.Environment.SpecialFolder obsahuje několik nových složek.

  • Nyní lze ve třídách, které dědí z třídy System.IO.Stream snadno kopírovat jeden datový proud do jiného pomocí metody CopyTo.

  • Nové přetížení metody Path.Combine umožňuje kombinovat cesty k souboru.

  • Nová rozhraní System.IObservable<T> a System.IObserver<T> poskytují zobecněný mechanismus pro oznámení typu push.

  • Třídy System.IntPtr a System.UIntPtr nyní obsahují podporu pro operátory sčítání a odčítání.

  • Nyní je možná opožděná inicializace pro každý vlastní typ pomocí obalení typu uvnitř třídy System.Lazy<T>.

  • Nová třída System.Collections.Generic.SortedSet<T> poskytuje samo-vyvažovací strom, který po vložení, odstranění a vyhledávání udržuje data v seřazeném pořadí. Tato třída implementuje nové rozhraní System.Collections.Generic.ISet<T>.

  • Algoritmy komprese pro třídy System.IO.Compression.DeflateStream a System.IO.Compression.GZipStream se zlepšily tak, aby již zkomprimovaná data nebyla déle nahuštěná. Také 4gigabytové omezení velikosti pro kompresi datových proudů bylo odstraněno.

  • Nové přetížení metody Monitor.Enter(Object, Boolean%) metody získá odkaz na typ Boolean a atomicky jej nastaví na hodnotu true jen tehdy, pokud je monitor úspěšně získán.

  • Metodu Thread.Yield lze použít za účelem zvýhodnění vykonávání volajícího vlákna před jiným vláknem, které je připraveno ke spuštění na současném procesoru.

  • Struktura System.Guid nyní obsahuje metody TryParse a TryParseExact.

  • Nový výčet Microsoft.Win32.RegistryOptions umožňuje zadat nestálý klíč registru, který nebude zachován po restartování počítače.

  • Maximální délka klíčů registrů již není omezena na 255 znaků.

Zpět na začátek

Managed Extensibility Framework

Managed Extensibility Framework (MEF) je nová knihovna v .NET Framework 4 která vám usnadní vytváření rozšiřitelných aplikací a aplikací, které jsou schopny složení. MEF umožňuje určit body, kde aplikace může být rozšířena, vystavit služby k nabídnutí ostatním rozšiřitelným aplikacím a vytvořit části pro spotřebu rozšiřitelnými aplikacemi. Umožňuje také snadné zjištění dostupných částí na základě metadat, aniž by bylo nutné načíst sestavení po částech. Další informace naleznete v části Přehled Framework spravované Rozšíření a Managed Extensibility Framework. Seznam MEF typů naleznete ve jmenném prostoru System.ComponentModel.Composition.

Zpět na začátek

Paralelní výpočty

The .NET Framework 4 zavádí nový model programování pro psaní více vláknového a asynchronního kódu, který výrazně zjednodušuje aplikace a práci vývojářů knihoven. Nový model umožňuje vývojářům psát účinný, jemně odstupňovaný a škálovatelný paralelní kód v přirozeném stylu bez nutnosti pracovat přímo s vlákny nebo s fondem vláken. Nový jmenný prostor System.Threading.Tasks a další související typy podporují tento nový model. Paralelní technologie LINQ (PLINQ) je paralelní implementace LINQ to Objects, umožňuje podobnou funkcionalitu prostřednictvím deklarativní syntaxe. Další informace naleznete v tématu Paralelní programování v rozhraní .NET Framework.

Zpět na začátek

Síťové služby

Vylepšení týkající se síťových služeb jsou následující:

Zpět na začátek

Web

Technologie ASP.NET verze 4 přináší nové vlastnosti v následujících oblastech:

  • Základní služby včetně nových API rozhraní, která umožňují rozšířit mezipaměť, podpora komprese pro stavová data relace a nový přednastavený správce aplikace (funkce automatického spuštění).

  • Webové formuláře zahrnují více integrovanou podporu pro ASP.NET směrování, rozšířenou podporu webových standardů, aktualizovanou podporu prohlížečů, nové vlastnosti pro datové ovládací prvky a pro řízení zobrazení stavu.

  • Ovládací prvky webových formulářů zahrnují nové ovládací prvky grafu.

  • MVC zahrnuje nové podpůrné metody pro pohledy, podporu rozdělených MVC aplikací a asynchronní řadiče.

  • Dynamická data zahrnují podporu pro existující webové aplikace, podporu pro relace typu N : N a dědičnost, nové šablony položek a atributy, vylepšené filtrování dat.

  • Microsoft AJAX v knihovně Microsoft AJAX zahrnuje přídavnou podporu pro klientské AJAX aplikace.

  • Visual Web Developer obsahuje vylepšenou technologii IntelliSense pro JScript, nové automatické dokončování výstřižků jazyka HTML a revize technologie ASP.NET, vylepšenou CSS kompatibilitu.

  • Nasazení obsahuje nové nástroje pro automatizaci typických úkolů nasazení.

  • Cílení na více verzí obsahuje lepší filtrování pro funkce, které nejsou k dispozici v cílové verzi rozhraní .NET Framework.

Další informace o těchto funkcích naleznete v tématu Co je nového v technologii ASP.NET 4 a aplikaci Visual Web Developer.

Zpět na začátek

Klient

Windows Presentation Foundation (WPF) verze 4 obsahuje změny a vylepšení v následujících oblastech:

  • Nové ovládací prvky včetně Calendar, DataGrid a DatePicker.

  • VisualStateManager podporuje měnící se stav ovládacích prvků.

  • Funkce Dotyk a Manipulace vám umožňují vytvářet aplikace, které získávají v systému Windows 7 vstup z více doteků současně.

  • Grafika a animace podporují zaokrouhlování rozložení, technologii Pixel Shader 3.0, složení v mezipaměti a funkce usnadnění.

  • Text zlepšil vykreslování textu a podporuje úpravy barvy blikajícího kurzoru a barvy výběru v textových polích.

  • Vytvoření vazby je podporováno ve vlastnosti příkazu Command InputBinding, dynamických objektech a vlastnosti Text.

  • Aplikace prohlížeče XAML (XBAP) podporují komunikaci s webovou stránkou a nasazení s plnou důvěryhodností.

  • Nové typy v oboru názvů System.Windows.Shell umožňují komunikovat s hlavním panelem systému Windows 7 a předávat data do prostředí Windows.

  • WPF a Silverlight Designer v aplikaci Visual Studio 2010 mají různá vylepšení návrháře, která pomáhají při vytváření aplikací WPF nebo Silverlight.

Další informace naleznete v tématu What's New in Windows Presentation Foundation Version 4.

Zpět na začátek

Data

ADO.NET

Technologie ADO.NET poskytuje nové funkce pro rozhraní Entity Framework včetně objektů ignorujících trvalé uložení, funkcí pro LINQ dotazy a generování kódu pro přizpůsobenou vrstvu objektu. Další informace naleznete v tématu What's New in ADO.NET.

Dynamická data

Dynamická data byla pro technologii ASP.NET 4 tak vylepšena, aby vám poskytla více síly pro rychlé vytváření datově řízených webů. To zahrnuje následující:

  • Automatické ověřování založené na omezeních, která jsou definována v datovém modelu.

  • Schopnost snadno změnit revizi, která je generována pro pole v ovládacích prvcích GridView a DetailsView pomocí šablon polí, které jsou součástí projektu dynamických dat.

Další informace naleznete v tématu Co je nového v technologii ASP.NET 4 a aplikaci Visual Web Developer.

WCF Data Services

Služba ADO.NET Data Service byla přejmenována na WCF Data Services a má následující nové funkce.

  • Datové vazby.

  • Počítání entit v sadě entit

  • Stránkování řízené serverem.

  • Projekce dotazu.

  • Vlastní poskytovatelé datových služeb

  • Proud binárních zdrojů.

Další informace naleznete v tématu What's New in WCF Data Services.

Zpět na začátek

Windows Communication Foundation

Windows Communication Foundation (WCF) poskytuje následující vylepšení:

  • Aktivace založená na konfiguraci: Odstraní požadavek na soubor SVC.

  • Integrace System.Web.Routing: Poskytuje větší kontrolu nad adresou URL vaší služby tím, že umožňuje použití adres URL bez přípon.

  • Podpora více vazeb webu IIS: Umožňuje vícenásobné základní adresy se stejným protokolem na stejném webu.

  • Směrovací služba: Umožňuje směrovat zprávy na základě obsahu.

  • Podpora protokolu WS-Discovery: Umožňuje vytvářet a hledat zjistitelné služby.

  • Standardní koncové body: Předdefinované koncové body, které umožňují zadat pouze určité vlastnosti.

  • Služby pracovního postupu: integrují WCF a WF poskytnutím činností k odesílání a přijímání zpráv, možnosti sladit zprávy založené na obsahu a hostitele služby pracovního postupu.

  • Funkce WCF REST:

    • Ukládání webu HTTP do mezipaměti: umožňuje ukládání odpovědí webové služby HTTP do mezipaměti.

    • Podpora formátů webu HTTP: umožňuje dynamicky určit nejlepší formát pro reakci služby.

    • Stránka nápovědy webových služeb HTTP: poskytuje automatickou stránku nápovědy pro webové služby HTTP podobnou stránce nápovědy služby WCF.

    • Zpracování chyb webu HTTP: umožňuje webovým službám HTTP vracet informace o chybách ve stejném formátu jako operace.

    • Podpora jazyka JavaScript napříč doménami webu HTTP: umožňuje použití odsazení JSON (JSONP).

  • Zjednodušená konfigurace: Snižuje rozsah konfigurace, kterou služba vyžaduje.

Další informace naleznete v tématu What's New in Windows Communication Foundation.

Zpět na začátek

Windows Workflow Foundation

Windows Workflow Foundation (WF) poskytuje zlepšení v těchto oblastech:

  • Vylepšený model aktivity pracovního postupu: Třída Activity poskytuje základní abstrakci chování pracovního postupu.

  • Bohaté možnosti složené aktivity: pracovní postupy těží z nových činností řízení toku, které modelují tradiční struktury řízení toku, jako jsou například Flowchart, TryCatch a Switch<T>.

  • Rozšířená předdefinovaná knihovna aktivit: Nové funkce knihovny aktivit zahrnují nové aktivity řízení toku, aktivity pro manipulaci s daty členů a aktivity pro řízení transakcí.

  • Datový model explicitní aktivity: Mezi nové možnosti ukládání a přesunu dat patří variabilní a směrové argumenty.

  • Možnosti zdokonaleného hostování, trvalosti a sledování: K vylepšením hostování patří rozšířené možnosti spouštění pracovních postupů, explicitní trvalost při použití aktivity Persist, trvalost bez uvolnění, zabránění trvalosti pomocí zón bez trvalosti, použití ambientních transakcí z hostitele, záznam informací o sledování do protokolu událostí a pokračování v čekajících pracovních postupech pomocí objektu Bookmark.

  • Snazší možnost rozšíření návrháře WF: Nový návrhář WF je postaven na systému Windows Presentation Foundation (WPF) a nabízí jednodušší model k použití při opětovném hostování návrháře WF mimo aplikaci Visual Studio.

Další informace naleznete v tématu What's New in Windows Workflow Foundation.

Zpět na začátek

Viz také

Koncepty

What's New in Visual Studio 2010

Co je nového v technologii ASP.NET 4 a aplikaci Visual Web Developer

What's New in Windows Presentation Foundation Version 4

What's New in ADO.NET

Co je nového ve Visual Basic 2010

Co je nového v aplikaci Visual C# 2010

Co je nového ve Visual C++ 2010

Co je nového v programu Visual 2010 F #

Další zdroje

Nové typy a členové v rozhraní .NET Framework 4

What's New in Windows Communication Foundation

What's New in Windows Workflow Foundation

What's New in WCF Data Services