Co je nového v .NET Core 2.0
.NET Core 2.0 zahrnuje vylepšení a nové funkce v následujících oblastech:
- Nářadí
- Podpora jazyků
- Vylepšení platformy
- Změny rozhraní API
- Integrace sady Visual Studio
- Vylepšení dokumentace
Nástroje
dotnet restore se spouští implicitně
V předchozích verzích .NET Core jste museli spustit příkaz dotnet restore , který okamžitě po vytvoření nového projektu s novým příkazem dotnet stáhl závislosti a pokaždé, když jste do projektu přidali novou závislost.
Nemusíte spouštětdotnet restore
, protože se spouští implicitně všemi příkazy, které vyžadují obnovení, například dotnet new
, , dotnet build
, dotnet run
, dotnet test
dotnet publish
a dotnet pack
. Pokud chcete zakázat implicitní obnovení, použijte tuto --no-restore
možnost.
Příkaz dotnet restore
je stále užitečný v určitých scénářích, kdy explicitní obnovení dává smysl, například sestavení kontinuální integrace ve službě Azure DevOps Services nebo v systémech sestavení, které potřebují explicitně řídit, kdy dojde k obnovení.
Informace o správě informačních kanálů NuGet najdete v dotnet restore
dokumentaci.
Automatické vyvolání dotnet restore
můžete také zakázat předáním --no-restore
přepínače do new
přepínače , run
, build
, publish
, pack
, a test
příkazů.
Změna cílení na .NET Core 2.0
Pokud je nainstalovaná sada .NET Core 2.0 SDK, projekty, které cílí na .NET Core 1.x, se dají změnit na .NET Core 2.0.
Pokud chcete změnit cílení na .NET Core 2.0, upravte soubor projektu změnou hodnoty elementu <TargetFramework>
(nebo elementu <TargetFrameworks>
, pokud máte v souboru projektu více než jeden cíl) z 1.x na 2.0:
<PropertyGroup>
<TargetFramework>netcoreapp2.0</TargetFramework>
</PropertyGroup>
Knihovny .NET Standard můžete také změnit na .NET Standard 2.0 stejným způsobem:
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
</PropertyGroup>
Další informace o migraci projektu na .NET Core 2.0 najdete v tématu Migrace z ASP.NET Core 1.x na ASP.NET Core 2.0.
Podpora jazyků
Kromě podpory C# a F# podporuje .NET Core 2.0 také Visual Basic.
Visual Basic
S verzí 2.0 teď .NET Core podporuje Visual Basic 2017. Pomocí jazyka Visual Basic můžete vytvořit následující typy projektů:
- Konzolové aplikace .NET Core
- Knihovny tříd .NET Core
- Knihovny tříd .NET Standard
- Projekty testů jednotek .NET Core
- Projekty testů .NET Core xUnit
Pokud například chcete vytvořit aplikaci Hello World v jazyce Visual Basic, proveďte následující kroky z příkazového řádku:
Otevřete okno konzoly, vytvořte adresář pro projekt a nastavte ho jako aktuální adresář.
Zadejte příkaz
dotnet new console -lang vb
.Příkaz vytvoří soubor projektu s příponou
.vbproj
souboru spolu se zdrojovým kódem jazyka Visual Basic s názvem Program.vb. Tento soubor obsahuje zdrojový kód pro zápis řetězce "Hello World!" do okna konzoly.Zadejte příkaz
dotnet run
. Rozhraní příkazového řádku .NET cli automaticky zkompiluje a spustí aplikaci, která v okně konzoly zobrazí zprávu "Hello World!".
Podpora pro C# 7.1
.NET Core 2.0 podporuje C# 7.1, což přidává řadu nových funkcí, mezi které patří:
- Metodu
Main
, vstupní bod aplikace, lze označit asynchronním klíčovým slovem. - Odvozené názvy řazené kolekce členů
- Výchozí výrazy.
Vylepšení platformy
.NET Core 2.0 obsahuje řadu funkcí, které usnadňují instalaci .NET Core a jeho použití v podporovaných operačních systémech.
.NET Core pro Linux je jedna implementace
.NET Core 2.0 nabízí jednu implementaci Linuxu, která funguje na několika distribucích Linuxu. .NET Core 1.x vyžaduje, abyste si stáhli implementaci Linuxu specifickou pro distribuci.
Můžete také vyvíjet aplikace, které cílí na Linux jako jeden operační systém. .NET Core 1.x vyžaduje, abyste každou distribuci Linuxu cílili samostatně.
Podpora kryptografických knihoven Apple
.NET Core 1.x v systému macOS vyžadoval kryptografickou knihovnu sady nástrojů OpenSSL. .NET Core 2.0 používá kryptografické knihovny Apple a nevyžaduje OpenSSL, takže už ho nemusíte instalovat.
Změny rozhraní API a podpora knihoven
Podpora pro .NET Standard 2.0
.NET Standard definuje sadu verzí rozhraní API, která musí být k dispozici v implementacích .NET, které splňují danou verzi standardu. .NET Standard se zaměřuje na vývojáře knihoven. Cílem je zaručit funkčnost, která je k dispozici pro knihovnu, která cílí na verzi .NET Standard při každé implementaci .NET. .NET Core 1.x podporuje .NET Standard verze 1.6; .NET Core 2.0 podporuje nejnovější verzi .NET Standard 2.0. Další informace naleznete v tématu .NET Standard.
.NET Standard 2.0 zahrnuje více než 20 000 rozhraní API, než bylo k dispozici v .NET Standard 1.6. Velká část této rozšířené oblasti má za následek začlenění rozhraní API, která jsou společná pro rozhraní .NET Framework a Xamarin do .NET Standard.
Knihovny tříd .NET Standard 2.0 mohou také odkazovat na knihovny tříd rozhraní .NET Framework za předpokladu, že volají rozhraní API, která jsou přítomna v rozhraní .NET Standard 2.0. Nevyžaduje se žádná rekompilace knihoven rozhraní .NET Framework.
Seznam rozhraní API, která byla od poslední verze přidána do rozhraní .NET Standard, .NET Standard 1.6, najdete v tématu .NET Standard 2.0 vs. 1.6.
Rozšířená plocha povrchu
Celkový počet rozhraní API dostupných v .NET Core 2.0 se oproti .NET Core 1.1 více než zdvojnásobil.
A díky přenosu sady Windows Compatibility Pack z rozhraní .NET Framework je také mnohem jednodušší.
Podpora knihoven rozhraní .NET Framework
Kód .NET Core může odkazovat na existující knihovny rozhraní .NET Framework, včetně existujících balíčků NuGet. Upozorňujeme, že knihovny musí používat rozhraní API, která jsou nalezena ve standardu .NET.
Integrace se sadou Visual Studio
Visual Studio 2017 verze 15.3 nabízí řadu významných vylepšení pro vývojáře .NET Core.
Změna cílení aplikací .NET Core a knihoven .NET Standard
Pokud je nainstalovaná sada .NET Core 2.0 SDK, můžete změnit cílení projektů .NET Core 1.x na knihovny .NET Core 2.0 a .NET Standard 1.x na .NET Standard 2.0.
Chcete-li změnit cílení projektu v sadě Visual Studio, otevřete kartu Aplikace dialogového okna vlastností projektu a změňte hodnotu cílové architektury na .NET Core 2.0 nebo .NET Standard 2.0. Můžete ho také změnit tak, že kliknete pravým tlačítkem myši na projekt a vyberete možnost Upravit soubor *.csproj. Další informace najdete v části Nástroje uvedené výše v tomto tématu.
Podpora Live Unit Testing pro .NET Core
Kdykoli upravíte kód, Live Unit Testing automaticky spustí všechny ovlivněné testy jednotek na pozadí a zobrazí výsledky a pokrytí kódu živě v prostředí sady Visual Studio. .NET Core 2.0 teď podporuje Live Unit Testing. Dříve bylo živé testování částí k dispozici pouze pro aplikace rozhraní .NET Framework.
Další informace najdete v tématu Live Unit Testing pomocí sady Visual Studio a nejčastější dotazy k live unit testing.
Lepší podpora více cílových architektur
Pokud vytváříte projekt pro více cílových architektur, můžete teď v nabídce nejvyšší úrovně vybrat cílovou platformu. Na následujícím obrázku projekt s názvem SCD1 cílí na 64bitovou verzi macOS X 10.11 (osx.10.11-x64
) a 64bitovou verzi Windows 10 nebo Windows Server 2016 (win10-x64
). Před výběrem tlačítka projektu můžete vybrat cílovou architekturu, v tomto případě spustit sestavení ladění.
Souběžná podpora sad .NET Core SDK
Sadu .NET Core SDK teď můžete nainstalovat nezávisle na sadě Visual Studio. Díky tomu může jedna verze sady Visual Studio vytvářet projekty, které cílí na různé verze .NET Core. Dříve byla sada Visual Studio a sada .NET Core SDK úzce svázané; konkrétní verze sady SDK doprovázela konkrétní verzi sady Visual Studio.
Vylepšení dokumentace
Architektura aplikací .NET
Architektura aplikace .NET poskytuje přístup k sadě elektronických knih, které poskytují pokyny, osvědčené postupy a ukázkové aplikace při sestavování .NET: