使用 LINQPad 進行長時間的非同步事件該如何安全的取消執行

我現在幾乎所有的 Side Projects 都是用 LINQPad 開發的,不用管理什麼方案或專案,也不用想什麼各種詭異的架構,想到什麼功能就直接寫出來,搭配 AI 助理更是如虎添翼。最近我的一個小小的 AI 專案由於執行時間長,且 AI 回應速度慢又不穩定,因此我加入了快取功能,但是程式只要手動停止,執行中所建立的快取就會失效,所以有點小困擾。今天這篇文章我要介紹一個 LINQPad 8.1 的新功能,還有分享如何「優雅的結束」程式執行。

... 繼續閱讀 ...

如何縮減 WSL 2 與 Docker Desktop WSL 2 backend 的 VHDX 虛擬硬碟大小

我的電腦有安裝 WSL 2 與 Docker Desktop WSL 2 backend,這兩個分別各使用了一個 ext4.vhdx 虛擬硬碟,我在使用 WSL 2 與 Docker 一段時間之後,這兩個虛擬硬碟變的非常大,分別佔用了 39GB 與 79GB 之多,我想是時候來壓縮這兩個虛擬硬碟了。這篇文章我就來說明壓縮 vhdx 的方法。

... 繼續閱讀 ...

設定 .NET 的 HttpClient 使用 HTTP/2 通訊協定發出 HTTP 要求

前幾天把我的部落格網站啟用 HTTP/2 通訊協定版本,結果意外發現我有個用 WebClient 抓取網頁的程式壞掉了。其實我一開始並沒有發現是 HTTP/2 造成的問題,鬼打牆了一段時間才意識到可能是 HTTP 版本差異造成的問題。這篇文章我就來分享幾種不同的 HttpClient 程式寫法,讓你用 HTTP/2 通訊協定版本抓回遠端 Web 伺服器上的網頁。

... 繼續閱讀 ...

Windows 11 無法撥接 VPN 之問題處理方法

最近有個同事換了一台個人電腦,預設安裝了 Windows 11 作業系統,但他怎樣都無法連接公司的 VPN 伺服器,卡關了好幾天。我今天幫他查登入狀況,我發現從 VPN 伺服器上的認證記錄來看都是正確無誤的,這代表帳號密碼都沒有打錯,問題肯定出在 Windows 11 身上!今天這個問題終於解決,本篇文章說明一下處理的方法。

... 繼續閱讀 ...

如何透過 PowerShell 輸出 Exchange Online / Outlook 之中所有郵件資料夾

我使用 Outlook 應該有將近 20 年的歷史了,郵件資料夾我一直以為只有幾百個,但即便我想整理,也不知道從何著手,因為會花我太多時間,而且很難整理。我剛剛透過 PowerShell 計算了一下我的 Outlook 郵件資料夾到底有多少個,結果是驚人的 1,101 個,真的好可怕的多。這篇文章我就來分享幾個好用的 PowerShell 指令檔,幫助我快速整理出資料夾一覽表。

... 繼續閱讀 ...