Category: .net

我很愛用程式產生器節省無謂手工,其中有個經典應用是用程式產生器將服務元件轉成 WebAPI/MVC Controller + 客戶端呼叫程式庫,原理不難,程式產生器參照 C# DLL,用 Reflection 找出方法及所需參數,再從 XML Documentation 註解檔(.xml)取出對應說...

昨天分享 .NET 4.5.2 專案參照 4.6.1 專案,只有警告訊息但編譯會出錯的茶包,靠將 A 專案升為 4.6.1+ 解決,但愈想愈不對... 若低版本 .NET 參照高版本註定無法運作,為什麼被歸為警告而非錯誤?而 .NET 4.X 採「就地更新」(In-Place Update)政策,在...

某古老專案建置時,.nuget\nuget.exe 出現以下錯誤訊息: 用戶端與伺服器無法溝通,因為它們沒有公用的演算法。 The client and server cannot communicate, because they do not possess a common algorith...

.NET Core 程式寫久了,用命令列參數執控制程式已是日常,像發佈 .NET 6 程式時便少不了 --no-self-contained、-c Release、-r win-x64 等參數,而啟動 ASP.NET Core 時,使用 --urls 指定 HTTP Port 更是必備技巧。 .NE...

發現從 .NET 6 開始支援 System.Text.Json DOM 巡覽及編修,小小興奮了一下,打算逐步用 System.Text.Json 取代 Json.NET,不料隨即踩到雷。 有段用 JSON 傳送 Dictionary<string, object> 的程式,原本靠 Js...

在 .NET 要執行 DES/AES/RSA 加解密不是難事,遠從 .NET 3.5 時代,System.Security.Cryptography 命名空間都已內建相關 API 提供完整支援。不過這些安全相關 API 高度依賴作業系統的原生程式庫,從 .NET Core 開始,跨平台成為重要考量,...

依微軟的計劃,System.Text.Json 應取代 Json.NET,成為 .NET Core/.NET 5+ 奧林匹克指定 JSON 程式庫。System.Text.Json 主打輕巧高效能,但畢竟發展時間尚短,與身經百戰的老將 Json.NET 相比,在功能完整性及可擴充性上仍有點「嫩」。其...

自從上週在光碟存檔挖到 30 年前寫的俄羅斯方塊遊戲,當局立刻成立古蹟修復小組,期望能讓半百老人重溫舊日時光。 初步探勘後發現嚴重問題,當年遊戲很花俏地加了背景音樂,但檔案沒有留下來。 DOS 時代電腦沒內建音效卡,只有能發出單一頻率音調的蜂鳴器(故障時響三聲那種,1987 年 AdLib 音效卡才...

最近的 Side-Project 計劃用 Minimal API 寫個簡單的 LINE Notify 發送服務,靠單一 EXE 在本機跑 localhost 網站搞定所有事,以貫徹極簡主義。 使用 LINE Notify API 需註冊取得 client_id 及 client_secret,與使用...