.NET Core - migracje

W tym rozdziale dokonamy migracji aplikacji konsoli, która zawiera rozszerzenie project.json system budowania plików zamiast MSBuild (*.csproj). Mamy więc stary projekt, który zawiera następujące pliki.

Pytanie brzmi, dlaczego potrzebujemy migracji? Ten projekt jest tworzony przy użyciu narzędzi .NET Core 1.0 w wersji zapoznawczej 2, a teraz mamy zainstalowane narzędzia .NET Core 2.0 w wersji zapoznawczej 1. Teraz podczas tworzenia tej aplikacji przy użyciu narzędzia wiersza poleceń programu .NET Core 2.0 zostanie wyświetlony następujący błąd.

To dlatego, że project.jsonbuild nie jest już dostępny w .NET Core 2.0, więc potrzebujemy migracji, aby działał poprawnie. Aby zobaczyć dostępne polecenia, uruchommy następujące polecenie.

dotnet help

W sekcji poleceń możesz zobaczyć różne polecenia, a także możesz zobaczyć migrate polecenie, które spowoduje migrację projektu opartego na project.json do projektu opartego na programie MSBuild.

Uruchommy teraz następujące polecenie.

dotnet migrate

Zobaczysz podsumowanie procesu migracji, a tutaj możesz również zobaczyć, że projekt został pomyślnie przeniesiony.

Zobaczmy teraz strukturę katalogów za pomocą następującego polecenia.

tree /f

Zobaczysz teraz plik * .csproj wraz z plikiem Program.cs w katalogu głównym projektu, a plik project.json zostanie przeniesiony do folderu kopii zapasowej.

Otwórzmy console.csprojplik. Teraz możesz przywrócić i skompilować ten projekt przy użyciu systemu MSBuild, uruchamiając następujące polecenie.

dotnet restore

Możesz teraz zobaczyć, że wszystkie pakiety zostały przywrócone.

Możesz teraz zbudować projekt za pomocą następującego polecenia.

dotnet build

Teraz widać, że projekt został pomyślnie skompilowany przy użyciu programu MSBuild, a plik console.dll jest również generowany w ..\bin\Debug\netcoreapp1.0 teczka.

Poniższy zrzut ekranu przedstawia strukturę katalogów i pliki.