Raspberry PI üzerinde .NET uygulamalarında hata ayıklama
Raspberry PI gibi ARM tabanlı IoT cihazlarında çalışan .NET uygulamalarında hata ayıklama, benzersiz bir zorluk gösterir. ARM cihazlarda .NET uygulamaları geliştirmek mümkündür. ancak, Visual Studio dışındaki .net uygulamalarında hata ayıklamak için gereken omnisharp ARM cihazlarıyla uyumlu değildir. Sonuç olarak, uygulamaların uyumlu bir platformdan uzaktan ayıklanmalıdır.
Visual Studio Code hata ayıklama (platformlar arası)
Visual Studio Code Raspberry pi üzerinde .net hatası ayıklama, Raspberry Pi üzerinde ve projenin launch. json dosyasında yapılandırma adımları gerektirir.
Raspberry PI üzerinde SSH 'yi etkinleştirme
Uzaktan hata ayıklama için SSH gereklidir. SSH 'yi etkinleştirmek için Raspberry PI BELGELERINDEKI SSH 'yi etkinleştirme bölümüne bakın.
Visual Studio Uzaktan Hata Ayıklayıcı Raspberry Pi 'ye yükler
Raspberry PI 'deki Bash konsolu içinde (yerel olarak veya SSH aracılığıyla), aşağıdaki komutu yürütün. bu komut, Raspberry Pi üzerinde Visual Studio Uzaktan Hata Ayıklayıcı indirir ve yükler:
curl -sSL https://aka.ms/getvsdbgsh | /bin/sh /dev/stdin -v latest -l ~/vsdbg
Visual Studio Code 'da Launch. JSON kurulumunu yapın
Geliştirme bilgisayarında, projenin Launch. JSON' a bir başlatma yapılandırması ekleyin. Projenin bir Launch. JSON dosyası yoksa, Çalıştır sekmesine geçerek bir Başlat. JSON dosyası oluştur' u seçerek ve iletişim kutusunda .net veya .NET Core ' u seçerek bir tane ekleyin.
Launch. JSON ' daki yeni yapılandırma, aşağıdakilerden birine benzer görünmelidir:
"configurations": [
{
"name": ".NET Remote Launch - Self-contained",
"type": "coreclr",
"request": "launch",
"program": "~/sample/sample",
"args": [],
"cwd": "~/sample",
"stopAtEntry": false,
"console": "internalConsole",
"pipeTransport": {
"pipeCwd": "${workspaceRoot}",
"pipeProgram": "C:\\Program Files\\PuTTY\\PLINK.EXE",
"pipeArgs": [
"-pw", "raspberry",
"pi@raspberrypi"
],
"debuggerPath": "~/vsdbg/vsdbg"
}
},
Aşağıdakilere dikkat edin:
program, tarafından oluşturulan yürütülebilir dosyadırdotnet publish.cwd, uygulama PI üzerinde başlatıldığında kullanılacak çalışma dizinidir.pipeProgram, yerel makinedeki bir SSH istemcisinin yoludur.pipeArgs, SSH istemcisine geçirilecek parametrelerdir. Parola parametresini ve bu biçimdeki kullanıcıyı da belirttiğinizden emin olunpi<user>@<hostname>.
Önemli
Önceki örneklerde, Putty SSH istemcisinin bir bileşeni olan plink kullanılır . Windows ve Linux 'un son sürümlerinde bulunan openssh, bunun yerine kullanılabilir. Ancak, OpenSSH, parolaların komut satırı parametresi olarak gönderilmesini desteklemez. OpenSSH kullanmak için, Raspberry PI 'nizi passwordless SSH erişimi için yapılandırın.
Uygulamayı dağıtma
Uygulamayı .NET uygulamalarını Raspberry PI 'ye dağıtmabölümünde açıklandığı şekilde dağıtın. Dağıtım yolunun, cwd başlatma. JSON yapılandırmasındaki parametresinde belirtilen yol olduğundan emin olun.
Hata ayıklayıcıyı başlatma
Çalıştır sekmesinde, Başlat. JSON ' a eklediğiniz yapılandırmayı seçin ve hata ayıklamayı Başlat' ı seçin. Uygulama Raspberry PI üzerinde başlatılır. Hata ayıklayıcı, kesme noktaları ayarlamak, yerelleri incelemek ve daha fazlasını yapmak için kullanılabilir.
Başvurular
LINUX ARM 'de uzaktan hata ayıklama (omnisharp belgeleri)
Windows Visual Studio hata ayıkla
Visual Studio, uzak cihazlarda .net uygulamalarında SSH aracılığıyla hata ayıklama yapabilir. Cihazda özelleştirilmiş yapılandırma gerekmez. .net uzaktan hata ayıklamak için Visual Studio kullanma hakkında ayrıntılı bilgi için bkz. SSH kullanarak Linux üzerinde uzaktan hata ayıklama .net.