IRONSOFTWAREHOME

如何在Linux上使用C# Dev Kit設置VS Code

VS Code with C# Dev Kit on Linux

Tim Corey

19m 09s

在Linux上設定VS Code用於C#開發大約需要十分鐘,但需要注意的有C# Dev Kit擴充套件、熱重載配置和開發憑證行為,這樣才能確保流暢的工作流程。 提前了解每一個步驟讓過程變得可以預測。

在他的影片"在Linux上使用C# Dev Kit的VS Code"中,Tim Corey全程演示了設置過程:下載和安裝VS Code,新增C# Dev Kit擴充套件,建立Blazor網頁應用程式、偵錯並啟用熱重載。 我們將涵蓋每一步,以及他遇到的問題和如何解決。

如果您跟隨之前在Linux上安裝.NET 10 SDK的節目,本節將直接從那裡開始。 到最後,您在Linux上將擁有一個完整的本地開發環境,涵蓋Windows設置所需的一切。

VS Code不是Visual Studio

[0:42 - 1:59] Tim首先釐清了一個容易讓人混淆的事實:Visual Studio和Visual Studio Code是不同的產品。 Visual Studio是一個完整的IDE,只能在Windows上運行,因為它依賴於Windows專用的程式庫。 VS Code是一個輕量級的跨平臺文字編輯器,配合C# Dev Kit擴充套件可以成為一個功能齊全的環境,適用於大多數.NET開發工作。

這個區分在實踐中很重要,因為Visual Studio無法在Linux上安裝。 VS Code是未來的方向。

安裝VS Code

[1:59 - 3:46] 安裝過程很簡單。 從Visual Studio Code網站下載.deb檔案,打開它,然後由軟體包管理器處理其餘部分。

在Linux上安裝VS Code - 下載並運行.deb包

這次安裝的一個有用副作用是:它自動將Microsoft的軟體包庫新增到apt,這意味著VS Code可透過正常的系統更新過程保持最新。 沒有這個的話,您需要手動新增庫及其簽名憑證。

安裝後,將VS Code釘選到工作欄以便捷存取。

新增C# Dev Kit擴充套件

[4:44 - 5:47] 打開擴充套件面板並搜尋"C#"。 第一個結果應該是來自Microsoft的C# Dev Kit。 影片錄製時,已接近1400萬次下載。

這個擴充套件比純文字編輯的C#工作有顯著提升。

啟用自動更新安裝它。

授權要求

[5:47 - 8:03] 安裝後,C# Dev Kit要求您使用Microsoft帳戶登錄以獲得授權。 Microsoft的C#偵錯工具是專有的,這就是為什麼需要驗證才能獲得完整的偵錯體驗。

條款很寬鬆:對於個人開發者免費,對於僅由少於五名開發者構成且年收入低於一百萬美元的公司免費,只有超過這個門檻才需要付費的Professional授權。

建立Blazor網頁應用

配置好VS Code後,Tim直接從IDE建立了一個新專案。使用"建立.NET專案"命令,他選擇了Blazor網頁應用範本,並配置了HTTPS、互動自動模式和包含範例頁面。

在Linux上於VS Code中建立Blazor網頁應用專案

專案生成後,解決方案總管出現在左側,顯示與Visual Studio類似的專案結構。

運行和偵錯

要啟動應用,從側邊欄使用運行和偵錯,並選擇HTTPS啟動配置。VS Code構建專案並在預設瀏覽器中打開。

這時Tim遇到了.NET SDK 10.0.103中的一個已知問題:由於SDK構建中的合併衝突,開發憑證無法正確安裝。 瀏覽器顯示不可信憑證警告。

在Linux上的VS Code中運行和偵錯Blazor應用 - 憑證警告和解決方法

解決方法是點擊瀏覽器警告,選擇"高級"然後"繼續"。 完成此操作後,網站可以正常通過SSL運行。 將SDK回滾到10.0.102或更新到10.0.104都能永久解決此問題。

儘管憑證問題,所有預設頁面(主頁、計數器、天氣)都能正確載入。

啟用熱重載

預設情況下,VS Code中的熱重載是禁用的。 Tim展示了這一點,將"Hello, World"更改為"Hello, YouTube",即使保存並刷新,瀏覽器中也沒有更新。

啟用它需要VS Code中的兩項設置:

在VS Code C# Dev Kit中啟用熱重載並確認瀏覽器中的即時更新

啟用這兩項設置後,重新啟動偵錯會話。 工具列上出現火焰圖標,確認熱重載是啟用的。現在保存Razor檔案會立即在瀏覽器中反映出變更。

您可以及不能在Linux上構建的項目

[16:59 - 18:00] Tim簡要探討可用的專案範本並做出一個重要觀察:任何名稱中有"Windows"的東西(WinForms、WPF、UWP)都無法使用,因為這些框架是依賴於Windows平臺的。

在Linux上可行的是.NET生態系統中所有跨平臺的內容:網頁應用、ASP.NET Core API、gRPC服務、類庫、控制台應用、測試專案和工作服務。

對於Linux上的桌面應用,提及Uno平臺(使用XAML和MVVM/MVUX)作為跨平臺桌面應用的未來這一章節的主題。

總結:在Linux上的完整C#環境

[18:02 - 18:28] 在此過程結束時,開發工作流程的每一個部分都已到位:編輯、構建、偵錯和實時重載全在Linux上的VS Code中運行。 從其他機器打開現有的跨平臺.NET專案應該不需要更改。

結論

[18:02 - 19:07] 總結而言:帶有C# Dev Kit的VS Code讓Linux擁有一個完整的C#開發環境。安裝是下載了一個.deb文件和一個擴充套件。 熱重載預設是關閉的,但從設定面板啟用只需一分鐘不到。 而SDK 10.0.103中的開發憑證問題在10.0.104中得以解決。

大多數在生產中使用的.NET專案型別(網路應用、API、服務、類庫)在Linux上都能相同運行。 不能運行的專案是明確設計在Windows專用的UI框架周圍,這是預期的限制。

所以您下次為開發設置新的Linux機器時,整個環境可以在幾分鐘內完成。 唯一不是立即顯現的配置是熱重載,現在您知道要去哪裡找它。

範例提示:如果在啟用設置後,熱重載仍然不起作用,請確保您完全停止並重新啟動了偵錯會話。 偵錯工具列中的火焰圖標確認它是啟用的。如果圖標不在,舊會話仍在運行未載入新設置。

在他的YouTube頻道上觀看完整影片,掌握更多在Linux上開發C#的見解。

Earn More by Sharing What You Love

Do you create content for developers working with .NET, C#, Java, Python, or Node.js? Turn your expertise into extra income!

Let's Stay in Touch!

Join our newsletter, you’ll get exclusive access on article updates. We value your privacy

Key in blue circle

立即免費取得 30 天試用金鑰

Your trial license will be sent to your email address

無任何限制。100% 解鎖。無需信用卡。

OR
bullet_checked無需信用卡或建立帳號無任何限制。100% 解鎖。無需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
獲取您的無義務諮詢
填寫以下表格或發送電子郵件至sales@ironsoftware.com
您的詳細資訊將始終保密。
被全球數百萬工程師信任
Iron Software的客戶標誌
立即獲取您的30天試用金鑰
無需信用卡或帳戶建立