2022-08-30 11:32 PM 1 2,464
前陣子研究某個開源專案的密碼保存做法,想確認加密方法是否安全,學到一招很方便的 .NET 無腦加解密寫法,筆記備忘。 之前介紹過 PowerShell 有個 SecureString,可呼叫 Windows DPAPI (Data Protection API) 用不同機器不同登入身分專屬的金鑰加解...
2022-08-15 08:37 PM 4 1,428
Side Project 有段程式從外部 API 取得一個 DateTimeKind.Unspecified 的時間值,彙整時用 ToUniversalTime() 轉換為 UTC 時間再轉 JSON 儲存,依據規格該日期時間以台北時間為準,開發及測試階段結果如預期,不覺得這寫法有什麼不對。 不過,...
2022-08-13 10:15 AM 1 5,345
我想在 Side Project 加上發通知到手機的功能,原本想用 LINE,但因為通知對象就只有我自己,找到更簡單的做法 - Slack。 用 Slack 免費版建個一人 Workspace,開個一人頻道(如果加上機器人應該算兩個人),只需簡單設定跟幾行程式就搞定。在手機安裝 Slack App,...
2022-07-11 11:11 PM 0 2,042
遇到傳送 HttpRequest 時需附帶 Cookie 的需求,順手整理 .NET Framework、.NET 6、PowerShell 範例供未來參考。 模擬情境為網站有 AutoRedirect.aspx 及 ShowAndSetCookie.aspx 兩支程式,前者單純導向 ShowAnd...
2022-07-04 09:55 AM 0 2,697
同事分享地雷一枚。先踩到 ODP.NET OracleDataReader 數字型別對映陷阱,未指定 decimal 交由 ODP.NET 自由決定,某個 NUMBER(10, 2) 欄位被轉成 double,生出 1519222.6099999999 這種浮點數字,之後再陷入數字到底是 .6099...
2022-06-19 12:02 PM 0 3,268
昨天 PO 了金魚都能懂的 .NET 6 開源程式 EXE 製作法,有好些讀者貼心提醒我可以用 Github Action 自動編譯成 EXE,方便完全不懂程式的朋友直接下載。坦白說,一開始有閃過自動編譯的想法,但很快我就決定把握這個科普 .NET 與程式碼是怎麼變成程式的機會! (話說,九年...
2022-06-17 09:56 PM 11 7,207
昨天在 Windows 11 啟動獨立 IE 應用程式展示的復刻版 ClassicIE,有讀者敲碗希望能提供 EXE 下載。 這一年來我陸續寫了一些 .NET 6 小工具,清一色都是用 Github 分享原始碼,沒想過直接提供 EXE。主要原因是 EXE 檔不透明,永遠要面對可能窩藏病毒木馬的質疑,...
2022-06-05 08:54 PM 2 3,936
當代量產型製造業幾乎都是採用生產線作業,以汽車為例,會分成焊接、烤潻、組裝、測試等站,各站依處理時間調整人力與設備數量,以求站與站之間能無縫接軌,將閒置及等待時間降到最低,達到最大產能。而我們開發系統時,若遇到包含多個步驟的大量批次作業,每個步驟具有一定複雜度、涉及資源不一,此時就可借用生產線概念,...
2022-06-01 10:46 PM 3 3,122
收到友人貢獻茶包一枚。 .NET DateTime.Parse() 有其好用之處,可以解析各種日期時間格式: Console.WriteLine(DateTime.Parse("2022-06-01")); Console.WriteLine(DateTime.Parse(...
2022-05-27 09:17 PM 2 2,286
我喜歡把網頁用的小圖檔用 Data Uri 直接寫進 HTML 或 CSS 裡,避免工具程式或範例網頁帶著小拖油瓶。記得在古早版本 Visual Studio 我有找到擴充套件,可在圖檔按右鍵選單快速將圖檔轉成 Data Uri 字串複製到剪貼簿。Visual Studio 已升級好幾次,我沒再 S...
2022-05-21 07:53 AM 3 6,361
身為性急又沒耐心的現代王藍田,我習慣為日常作業寫小工具放在桌面,需要時點兩下,避免被瑣事影響心情。簡單作業會用 PowerShell 寫,邏雜複雜的則會開個 Console Application 專案用 C# 開發。 .NET 6 推出的 Top-Level Statements 神奇地簡化 Pr...
2022-05-15 09:45 AM 1 4,060
我很愛用程式產生器節省無謂手工,其中有個經典應用是用程式產生器將服務元件轉成 WebAPI/MVC Controller + 客戶端呼叫程式庫,原理不難,程式產生器參照 C# DLL,用 Reflection 找出方法及所需參數,再從 XML Documentation 註解檔(.xml)取出對應說...
2022-04-30 02:41 PM 0 1,627
昨天分享 .NET 4.5.2 專案參照 4.6.1 專案,只有警告訊息但編譯會出錯的茶包,靠將 A 專案升為 4.6.1+ 解決,但愈想愈不對... 若低版本 .NET 參照高版本註定無法運作,為什麼被歸為警告而非錯誤?而 .NET 4.X 採「就地更新」(In-Place Update)政策,在...
2022-04-29 09:10 PM 0 1,715
因為一個 .NET 參照問題鬼打牆十分鐘,脫身後想起好像不是第一次遇到,肯定是當時沒好好寫篇筆記才被詛咒,趕緊補上。 模擬出相似情境如下,UnitTests 專案參照 MyConsoleApp 專案,呼叫其中 DummyModel.RandomString() 方法(註:範例錯打成 Dymmy 請無...
2022-04-28 11:05 PM 0 1,299
某古老專案建置時,.nuget\nuget.exe 出現以下錯誤訊息: 用戶端與伺服器無法溝通,因為它們沒有公用的演算法。 The client and server cannot communicate, because they do not possess a common algorith...
2022-04-05 10:45 AM 0 1,847
.NET Core 程式寫久了,用命令列參數執控制程式已是日常,像發佈 .NET 6 程式時便少不了 --no-self-contained、-c Release、-r win-x64 等參數,而啟動 ASP.NET Core 時,使用 --urls 指定 HTTP Port 更是必備技巧。 .NE...