The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

體驗全新 ASP.NET Core 6.0 專案範本與 C# 10 語言特性

我的 ASP.NET Core 6 開發實戰:從入門到進階 課程將在 2021/11/13 開始,就在 .NET 6.0 推出後 4 天。由於 .NET 6.0 與 C# 10 即將推出,全新的 Top-level statements 語言特性,可以大幅簡化 .NET 應用程式的啟動程式碼,這個變化自然也會影響到 ASP.NET Core 6.0 的啟動方式,許多 .NET Core 的老手看到全新的 Hosting Model (裝載模型) 可能會非常不適應,這篇文章主要用來解決大家的疑惑。

... 繼續閱讀 ...

如何在本機使用 Dapr 進行微服務應用程式開發

最近花了點時間在玩 Dapr 這套非常優異的開發工具,當你想要開發分散式應用程式或想實現微服務架構,都可以深入瞭解看看,保證不虛此行。本篇文章我打算分享如何在本機使用 Dapr 開發微服務分散式應用程式,幫助大家更容易的上手這套分散式應用開發工具!👍

... 繼續閱讀 ...

啟用 Razor 執行階段編譯 (Enable Razor runtime compilation) 技術細節探索

其實我們這幾年幾乎都在用前後端分離的架構在開發網站,單純使用 ASP.NET Core MVC 的機會並不多,但是我知道很多人還是在用 MVC 在維護網站,而且 ASP.NET Core 預設會將所有 Razor 頁面 (Views) 編譯成 DLL 檔,網站啟動之後如果要修改 View 的內容,還需要重新編譯專案才能測試到新的結果,非常不方便。如果要啟用所謂的 Razor 執行階段編譯 (Razor runtime compilation) 就要對專案做出一點設定,但是網路上能查到的文件都沒有對技術細節講的足夠深入,所以我也花了一些時間探索了許多技術細節,打算在這篇文章呈現。

... 繼續閱讀 ...

如何在 Linux 正確建立自簽憑證並讓 ASP.NET Core 網站可以順利進行連線

我最近漸漸的嘗試將各種前後端開發環境搬遷到 Linux 環境下,無論是在 WSL 或是原生的 Linux 的效能表現都比 Windows 來的出色。然而在微服務架構下,服務與服務間的通訊經常需要使用 TLS/SSL 憑證進行加密連線,但是自簽憑證在 Linux 底下預設是不受信任的,必須特別處理才能解決服務間的安全連線的信任問題。這篇文章我將說明這個過程與解決方法。

... 繼續閱讀 ...

如何在 Ubuntu Linux 解除安裝 .NET SDK 或 Runtime 任意版本

雖然 .NET 有個 Uninstall Tool 可以用來解除安裝任何 .NET / .NET Core 版本,但是目前依然不支援 Linux 版本,可能是 Linux 生態實在是太複雜了,所以一直沒有提供好用簡便的反安裝工具。今天這篇文章我將分享幾個好用的命令,幫助你快速解除安裝現有的 .NET SDK 與 Runtime 版本。

... 繼續閱讀 ...

使用 Playwright for .NET 開發 E2E 端對端測試程式

最近迷上了 Playwright 這套 E2E 框架,他不但同時支援 Chromium, Firefox 與 WebKit 瀏覽器,還可以跨平台支援 Windows, macOS 與 Linux,而且針對 SPA 類型的應用程式進行 E2E 測試完全不用撰寫太多非常 Hacky 的程式碼,寫起來非常的順手。除此之外,他還同時支援 JavaScript & TypeScript, Python, .NETJava 等程式語言,相當容易上手。

... 繼續閱讀 ...

如何讓 Azure Functions 也可以支援 dotnet watch 自動監視程式變更重啟

在用 .NET Core 3.1 開發 Azure Functions 的時候一直以來有個困擾,那就是每次改完程式都要回到 Terminal 中斷程式執行,並且重新啟動,沒有像其他應用程式那樣可以用 dotnet watch run 自動監視檔案變更就自動重啟應用程式。雖然這個功能沒有內建在 func start 命令中,但是我卻發現 .NET CLI 竟然有個 dotnet watch msbuild 可以用,雖然陽春了點,但其實也是還是可以滿足需求! 👍

... 繼續閱讀 ...