[.NET 6] 自訂 JsonConverter 反序列化 Dictionary<string, object>

我使用預設的 System.Text.Json 反序列化時 JsonSerializer.Deserialize<Dictionary<string, object>>(json),得到 JsonElement,再透過 JsonElement.Get 系列的方法才能取得正確的資料,這樣有點繁瑣,為此我找到了解方,自行實作 JsonConverter,緊接著,來看看我怎麼處理的

...繼續閱讀 »

如何使用 SQL Server 2019 容器

以往都是使用 localdb 來進行開發和自動化測試,但它只能支援 Windows 平台,若是要跨平台,SQL Server 容器是選項之一,接下來我們就來看看要怎麼使用。

跟資料庫有關的測試可以稱操作資料庫的動作是倉儲(Repository)物件的單元測試,或者是,商業邏輯物件和倉儲物件的集成測試,不管怎麼叫,基本上對於資料庫的操作案例也應該會涵蓋到;原則上,案例不會多,至少會有一個,再重要性來決定要不要增加。

...繼續閱讀 »

通過 zsh + zim + powerlevel10k 讓 Windows Terminal + WSL2 的指令碼具有自動補完功能

當我們安裝好 WSL/WSL2 之後,就可以在 Windows 上使用 Linux 的命令,請參考 Windows 與 Linux 的互通性 | Microsoft Docs,但卻沒有像 Powsershell 那樣的 InstelliSense / Completaion,搜尋了一下發現別的生態已經有非常完整的方案了,最後我選擇 zsh + zim + powerlevel10k,它們除了讓我們的 CLI 畫面變得更漂亮,還有以下功能 (我只知道這樣XD)

  • 自動補完,按 Tab or 方向鍵就自動填上完整指令。
  • 指令執行時間。
  • 輸入部分指令,呈現之前輸入過的指令
...繼續閱讀 »

[TFS 2017] 使用 Sandcastle 自動產生 Code Contract 說明文件

續上篇 https://dotblogs.com.tw/yc421206/2017/04/05/tfs_build_vnext_sandcastle_generate_live_document

我們已經自動化產生 API 說明文件了,若程式碼裡面有用到 Code Contract 還需要一些動作才能自動產生 Code Contract 的說明文件

 
...繼續閱讀 »