JSON 資料差異比對小工具
再分享一個 .NET 小工具。 目的是要比對兩個 Schema 相同資料表的資料差異,其中一個是參考依據(這裡稱為 Source),一個是比較對象(稱為 Target),提供 Primary Key 進行匹配比對,找出有哪幾筆需要新增、哪幾筆要刪除,哪幾筆的哪幾個欄位需要更新? 由於比對程式不一定能... Read More
View Article機車怠速熄火發不動故障一則 - CDI
我的機車老歸老,平日通勤以捷運為主不常騎,還特別租了地下室車位讓它安養天年。年紀大車騎不快,時速破 40 就心驚驚,老人配老車,要求不高,說起來車況還不錯,就只是發車不太好好。但車究竟老了,總會出些小毛病,這回壞了一個新車至今沒換過的零件 - CDI (電容放電式點火 Capacitor Disch... Read More
View Article在 Edge 使用 Chrome 外掛
發現 Dcard 有些討論版會跳出登入對話框擋住網頁內容阻止你繼續瀏覽,理由是「登入後可一起討論喔!」: 我只想安安靜靜的匿名潛水呀,為什麼要逼我登入?(抱頭狂搖) 所幸,寫了十幾年的前端,縱然只懂點皮毛,移遮罩這種小事還難不倒我。寫了兩行 JavaScript,成功奪回瀏覽權。 接下來我想用 T... Read More
View Article1000 還是 1024?KB、KiB、MB、MiB
你可能不知道的 NTFS 檔案佔用磁碟大小 (Size On Disk) 原則有段關於 1KB 是 1024 Bytes 的補充說明,意外獲得不少讀者迴響(在此感謝),讓我活到老學到老,又補充了一些新知識。 我們平日用來表示檔案大小、記憶體或磁碟容量的單位: KB(Kilobyte)、MB(Mega... Read More
View Article【茶包射手日記】Cookie 名稱能不能用 $ 起首?
見識不夠,踩到一個 ASP.NET Cookie 命名地雷。 在某個 ASP.NET 專案用 Response.Cookies.Add() 新增名為 "$myCookie" 的 HttpCookie,之後用 Request.Cookies["$myCookie"... Read More
View Article「慶讚中元」的慶讚是什麼意思?
一年一度的中元節將至,處處可見「慶讚中元」這個節日用語。令人好奇,中元節到底要慶什麼?讚什麼呢? 照片來源 作者:Jimmy Yao 爬文心得如下。 「慶贊中元」應是很早就有的說法,但正確寫法是「贊」而非「讚」。 中元節最早是初秋慶賀豐收、酬謝大地的節日,而七月十五是道教三官大帝之一的地官大帝誕辰... Read More
View Article用 PowerShell 安全優雅地跑 SQL - 連線字串加密與類 Dapper 寫法
在 PowerShell 可以引用 .NET 程式庫,因此就算想要用它連資料庫跑 SQL 指令,也不是什麼難事。建立 SqlConnection、SqlCommand,ExecuteReader() 讀結果,ExecuteNonQuery() 跑更新,三兩下就能搞定。 但在 .NET 習慣了 Dap... Read More
View Article餿主意:DIR 結果轉存檔案,若同步輸出到螢幕會變多慢?
有些你以為不會錯的直覺,實際上錯得離譜。 在清理 750 萬個檔案資料夾文章提到,我選擇將 DIR 結果寫成檔案方便反覆測試調整,轉存過程用了一招將 DIR 結果同時輸出到檔案與螢幕,理由是看得到進度能化解等待焦慮,有益急躁老人心血管保健。但不少讀者提醒此舉讓原本很耗時的 DIR 轉存動作雪上加霜,... Read More
View Article為自己寫程式 - 身分證影本加浮水印
我很討厭上傳身分證照片這種重要個資,偏偏許多標榜電子化的申請流程 App,仍遵循古法,需要上傳身分證才能完成最後一哩路。對於不得不上傳的場合,唯一防止身分證影本被移作他用的手段是在照片加上「限 XXX 申請使用」的浮水印,雖說硬要修圖去掉浮水印拿不是不可能,但讓壞人嫌麻煩挑其他軟柿子就算成功。(這跟... Read More
View Article自訂大小位置 window.open() 之 IE 相容問題
IE 都更期間,部分網頁仍希望做到 IE11 / Edge / Chrome 相容。前些時侯學會以全螢幕瀏覽器視窗檢視,在 Edge/Chrome 運作良好,在 IE 則會有些狀況。 問題重現範例如下:線上展示 <button onclick="testWinOpen('https:... Read More
View Article【茶包射手筆記】F12 偵錯導致 window.open() 快顯封鎖
現代瀏覽器對 window.open() 行為有諸多限制,以防止其被濫用。瀏覽器多內建有快顯封鎖器 (Popup Blocker),只要 window.open() 不是從點擊等直接使用者行為(Direct User Action)事件呼叫,預設就會被封鎖,使用者必須提供站台白名單逐一開放。新朋友可... Read More
View ArticleDebian 與 Non-Free Firmware
入手新玩具 - Intel NUC 迷你主機,預備擔任家庭文書機,身為裝機工程師,自肥一下也是很合理滴,借來試裝 Debian。 之間玩 Debian 都是裝在 VM 上,不用煩惱硬體支援問題,但安裝前做了些功課,發現要裝在 Intel NUC 上有些眉角。Debian Wiki 上有網友整理的 ... Read More
View Article為自己寫程式 - 簡單寫個 .NET Slack 訊息發送程式
我想在 Side Project 加上發通知到手機的功能,原本想用 LINE,但因為通知對象就只有我自己,找到更簡單的做法 - Slack。 用 Slack 免費版建個一人 Workspace,開個一人頻道(如果加上機器人應該算兩個人),只需簡單設定跟幾行程式就搞定。在手機安裝 Slack App,... Read More
View ArticleIntel NUC 之 Linux 開機後無畫面問題與 Debian 伺服器安裝小記
先說心得。 買這台 11 代 i3 Intel NUC 迷你主機主要是當文書機,正式服役前被我借來裝 Debian 玩。入手後有先裝過 Windows 10 驗測硬體,安裝體驗很讚,不需額外下載任何驅動程式,裝完重開機裝置管理員就很完美,無不明裝置,無問號,不愧是 Intel。但如果你裝的是 Lin... Read More
View ArticleEF Core 2.x 升級 3.x 問題兩則
我的部落格這兩天悄悄從 .NET 5 升級到 .NET 6。 過程遇到 EF Core 2.2 升 6.0 產生的奇怪問題,原本以為要搞很久,但修掉兩個 Issue 後意外沒再發現其他問題,簡單測試主要功能都正常,我就當改好了直接上線全民公測,大家若有發現問題請再回報唄。 【本文開始】 2020 年... Read More
View ArticleToUniversalTime() 之時區陷阱
Side Project 有段程式從外部 API 取得一個 DateTimeKind.Unspecified 的時間值,彙整時用 ToUniversalTime() 轉換為 UTC 時間再轉 JSON 儲存,依據規格該日期時間以台北時間為準,開發及測試階段結果如預期,不覺得這寫法有什麼不對。 不過,... Read More
View ArticleIP 位址版 Whoscall - AbuseIPDB
一般來說,網站只要對 Internet 公開,就得面對一堆機器人的騷擾,這些惡意程式成天在網路海巡,亂槍打鳥或依據蒐羅到的網站清單,一台一台掃瞄試探,找尋漏洞伺機下手。若網站沒有致命漏洞,這種無差別式窺探通常威脅不高,就像偷車賊經過,難免打量幾眼看看有無上鎖開防盜器,幾乎無法社絕。但,對方如果有目標... Read More
View ArticlePowerShell 密技 - 自動改用管理者權限執行 .ps1
有些 PowerShell 指令必須以管理者權限執行,當 .ps1 包含需要高權限動作,執行時要記得開「Windows PowerShell (系統管理者)」下指令。 例如以下這個 Restart-WinService.ps1: param ( [string]$svcName, [int]$... Read More
View Article【茶包射手日記】WebATM 安控元件捉鬼記
開了慣用的 WebATM 網站要轉帳,使用讀卡機時出現 "此智慧卡目前被另一個處理程序共用" 之類的錯誤訊息(當時沒詳記,後來沒能重現,但大概是這個意思)。重開瀏覽器、由 Edge 換 Chrome、重開機都不管用,我決定啟動 3R 程序的 Reinstall - 重新安裝銀行提... Read More
View ArticleOffice 365 無法建立應用程式密碼
最近在玩 Office 365 (Office 365 2020/4/22 起已更名為 Microsoft 365,但 Office 365 較能望文生義,本文章兩個名詞都用,二者同義),被迫新學了一堆 Azure AD、MFA (Multi-Factor Authentciation 多重要素驗證... Read More
View Article