GNU/Linux >> Znalost Linux >  >> Linux

Oficiální podpora pro vzdálené ladění aplikace .NET Core Linux ve WSL2 ze sady Visual Studio na Windows

Již dříve jsem psal na blogu o vývoji na Dockeru pomocí nových a vylepšených nástrojů Visual Studio Container Tools (a WSL2) a také o vzdáleném ladění aplikace .NET Core Linux ve WSL2 ze sady Visual Studio pro Windows.

To je ta druhá, o které dnes mluvím. Nyní můžete spouštět konzolu .NET Core a webové aplikace ve WSL2 a ladit je přímo z Visual Studia 2019!

Co potřebujete?

  • .NET Core Tools: https://get.dot.net
  • WSL 2: https://aka.ms/wsl
    • Distribuce Ubuntu nebo Debian: https://aka.ms/wslstore
  • Visual Studio 2019
    • Ladění .NET Core s rozšířením WSL 2

Zde je zkušenost se sadou Visual Studio 2019, když je rozšíření nainstalováno. „Prostě to funguje“ a umožňuje velmi snadné přepínání mezi spuštěním na Windows (pod IIS nebo webovým serverem Kestrel nebo pod Kestrel pod vaší výchozí distribucí Linuxu.

Podívejte se na to, můžete vidět, že .NET Core z pohledu Linux/WSL 2 je načteno z /usr/share/dotnet/shared, ale můj zdroj zůstává na mém disku /mnt/d (můj Windows D:) a ladění prostě funguje.

Také si všimnete, že běžíme na https://localhost:5001 a že localhost a porty z pohledu Windows mapují na localhost a ukazují (přes lokální tunel, který je transparentní) na WSL 2.

Jak funguje certifikát SSL, pokud jej obsluhuje webový server Linux Kestrel WSL 2?

Můžete vidět, že existuje symbolické propojení mezi mojí složkou WSL ~/.aspnet a mým místním profilem ve Windows, takže tato aplikace sdílí certifikáty SSL a že stejný certifikát je poskytován s Kestrel na Windows a Kestrel na Linuxu.

scott@IRONHEART:~$ cd .aspnet
scott@IRONHEART:~/.aspnet$ ls
DataProtection-Keys https
scott@IRONHEART:~/.aspnet$ cd https/
scott@IRONHEART:~/.aspnet/https$ ls
hanselminutes.core.pfx
scott@IRONHEART:~/.aspnet/https$ ls -alogF
total 12
drwxr-xr-x 2 4096 Jun 23 17:02 ./
drwxr-xr-x 4 4096 Jun 23 17:02 ../
lrwxrwxrwx 1 71 Jun 23 17:02 hanselminutes.core.pfx
->
/mnt/c/Users/scott/AppData/Roaming/ASP.NET/Https/hanselminutes.core.pfx*
scott@IRONHEART:~/.aspnet/https$

Rozdělil jsem ten řádek symbolickým odkazem -> podél 3 řádků, aby se na tomto blogu nezalomil.

Nyní můžete spouštět a ladit aplikace .NET Core v systémech Windows a Linux pomocí VS Code a Visual Studio 2019! Používám bezplatnou Community Edition Visual Studio 2019 a funguje to skvěle. To mi pomáhá ušetřit peníze, protože jsem svůj web podcastů přesunul na Linux v Azure a můj místní vývoj lépe odpovídá mé cloudové realitě. Zkuste to!

Sponzor: Centralizujte a prohledávejte strukturované protokoly aplikací, abyste mohli s jistotou diagnostikovat problémy – ještě rychleji a snadněji se Seq 2020.1!


Linux
  1. Vysvětlení subsystému Windows pro Linux, WSL a WSL2

  2. Jak nakonfiguruji Qt pro křížovou kompilaci z Linuxu do cíle Windows?

  3. Podporuje .NET Core v Linuxu Visual Basic?

  1. Jak odebrat předchozí verze .NET Core z Linuxu (CentOS 7.1)

  2. NuGet pro .NET Core na Linuxu

  3. Zkopírujte soubor z linuxu do sdílení systému Windows pomocí C# (jádro .NET)

  1. Jak vzdálenou plochu z Windows na plochu Linuxu pomocí XRDP

  2. Přístup ke vzdálenému systému Osx z OSX, Linuxu, Windows?

  3. Visual Basic .Net v Linuxu