土砲環形燈
每次拍小東西,打光是最惱人問題。為了避開影子,總要左閃右躲拉遠拉近忙到不亦樂乎,於是我想到 YouTuber、網美必備神器 - 環形燈,用環狀打光,就不用煩惱陰影跟亮度不均的問題了。 市面上環形燈產品多如牛毛,但身為 Maker 始終相信土砲才是王道。 網路上有人分享用環形 LED 燈管自製環形燈,... Read More
View Article使用 Git Diff 產生程式清單
分享私房小工具程式。 正式上線流程常需交付程式碼清單及異動程式碼,過去 TFS TFVC 時代我寫過類似的工具,改用 Git 之後,先前已分享過匯出 Git Commit 檔案並維持資料夾結構的寫法,當時是使用 PowerShell 加 xcopy。這回想更上層樓,兩個願望一次滿足 - 依資料夾結構... Read More
View ArticleSQL DateTime 型別陷阱
前幾天學到新知識 - SQL 的 DateTime 型別雖然可顯示到毫秒(0.001秒),但精確度非 0.001 秒,最後一位會取相近值到 0, 3, 或 7。 想起過去曾遇過時間資料存入 SQL 比對失敗的經驗,當時不知其所以然,也忘了最後怎麼解決,猜想跟此一特性有關。決定做個實驗釐清觀念,強化記... Read More
View Article取代單調 window.alert() 的好選擇 - SweetAlert2
嫌瀏覽器內建的 alert() / confirm() 太醜,Kendo UI 有 kendo.alert() 與 kendo.confirm() 可取代 window.alert()/confirm(),小缺點是標題列一律顯示網址難以調整,加上網頁未必就有引用 Kendo UI,為此下載龐大的 K... Read More
View Article在 ASP.NET MVC 加掛 Web Site Project 子網站
同事回報網站部署到測試主機 IIS 遇到詭異錯誤: Server Error in '/MyApp' Application. Configuration Error Description: An error occurred during the processing of a conf... Read More
View Article【答客問】C# 在 Word 找到圖案插入文字
讀者 Nathan 在使用 Open XML SDK 在 Word 插入圖片提問:如何在 Word 文件找到第一個 Shape 並插入文字? 好久沒玩 OpenXML,適逢假日剛好拿來暖身,維持手感。 這類 OpenXML 問題有個特性,只要能用 Word 做出來就一定有解! 因為有個無敵解題技巧 ... Read More
View ArticleCSS 練習 - 美化 Checkbox 清單
網頁介面的複選選項,大家第一個想到的都是 <input type="checkbox">,配合 <label> 能做到點選文字或勾選方塊都能選取的效果 (用 <label> 包住 <input type="checkbox&qu... Read More
View Article【茶包射手日記】Oracle 字元集與 VARCHAR2 長度問題
今天在兩台 Oracle 資料庫間搬資料時踩到地雷。 一模一樣的 Table Schema,從 A 資料庫 SELECT 取出資料塞入 B 資料庫,竟有幾筆冒出字串長度過長錯誤。進一步分析,關鍵在某個 VARCHAR2(30) 欄位,內容包含中文理應設成 NVARCHAR2(30) 才合理,但它被設... Read More
View ArticleHacking 樂無窮 - ODP.NET 預設 BindByName 為 true
近日參與古蹟翻修,遇到第一個問題是 Web Site Project 網站仍在使用過時的 System.Data.OracleClient,出現之前交手過的中文變問號狀況,加上它有效能不佳的前科,心一橫決定把它改寫成 ODP.NET。(原想直上 Managed ODP.NET,但系統仍依賴用 Unm... Read More
View ArticleCSS 背景列印問題
前篇文末提到用 CSS 美化瀏覽器預設 Checkbox 顯示的小技巧在實務應用上可能會遇過小問題,謎底揭曉 - 列印時會失真。 如上圖所示,瀏覽器列印時預設會忽略 HTML 元素的背景色或背景圖以求簡潔易讀,讓 input[type=checkbox]+span { background: Ur... Read More
View Article【茶包射手日記】詭異的 Windows 時鐘問題
這應該是我射手生涯所遇過數一數二的詭異茶包。 在 Windows 10 建了一台 Hyper-V VM 跑 Oracle Express 資料庫,測試時發生詭異狀況。操作網頁寫入資料庫,以新增時間為條件查詢,剛寫入的資料卻不在查詢結果中。INSERT 時取 SYSDATE 作為新增時間,查詢期間設最... Read More
View Article2020 渣打馬
渣打馬對我有特別意義。四年前比賽當天遇上霸王級寒流,體驗 4 度冰馬勇(但印象最深刻的卻是全程上了五次廁所)。三年前的渣打馬我一圓 SUB4 之夢並創下超越陳冠希的 3:55:04 神奇 PB,至今仍覺得當年是吃錯藥才跑出來的,而這個障礙高懸多年,直到上個月才成功突破,原本計劃挾月跑量 200K 之... Read More
View Article【茶包射手日記】網頁上傳附件重複疑雲
使用者回報:某個可上傳附件的表單功能出現詭異附件重複現象。第一次上傳檔案 A 送出表單一切正常,填第二張上傳檔案 B,送出後檢視冒出兩個附件 - 檔案 A 與檔案 B;再填第三張上傳檔案 C,這回表單附件變成三個 - 檔案 A、B、C 並存。 附件重複事小,要是張冠李戴甲使用者填寫冒出乙使用者的附件... Read More
View Article【茶包射手日記】非網域主機之 LDAPS 連線錯誤
同事報案,某台未加入網域的主機原本使用 LDAP 執行帳號密碼驗證,最近被要求改用 LDAPS,ASP.NET 程式遇上奇怪的 Unknown Error (0x80005000) 錯誤。 背景知識:如同 HTTP 被要求改用 HTTPS、FTP 要改為 SFTP,伴隨著資安意識抬頭,非加密傳輸的 ... Read More
View Article前端筆記 - 下一步導引式操作介面
依據這幾年的開發經驗,某些流程複雜但使用頻率不高的網頁操作流程,轉成下一步下一步的導引式操作(術語叫 Stepper)常能獲得使用者好評。 (補充:網頁介面依性質可粗分兩個方向:一種是使用人數不多但重度依賴,像是業務人員 Key 單,每天要重複輸入數百上千張,這種介面設計效率為王,常會將所有欄位集中... Read More
View Article3D 列印筆記 - 填充樣式、密度與強度的關聯
依據應用場合,3D 列印零件的強度要求不同,在使用 Cura 切片軟體時,我常陷入 Infill 不知怎麼調強度才夠的困擾。 不需承重或對抗扭力的物品比較簡單,Infill 設 10%,樣式設 Triangle 就好。但如果是支撐或固定用途零件,Infill 設太低用沒幾下就受損破裂;設太高,一來浪... Read More
View Article使用 WebClient 呼叫 WCF
前陣子有讀者問起如何用 PowerShell Invoke-WebRequest 呼叫 WCF?我大概知道原理,只要組合出符合 WCF 要求的 XML,直接用 POSTMan/WebClient/HttpClient/Invoke-WebRequest 呼叫 WCF 不是難事,但囉嗦的 SOAP X... Read More
View Article使用 PowerShell 呼叫 WCF
征服使用 WebClient 呼叫 WCF後的下個目標,自然是學會用 PowerShell 呼叫 WCF,繼續精進野外求生技能。 歷經這段時間的 PowerShell 實戰練習,我得到重要心得:.NET 開發者想用 PowerShell 處理未知情境有捷徑 - 先寫出 C# 程式達成目標再將程式邏輯... Read More
View Article防禦式 SQL 更新 - PowerShell 版
先前談過防禦式 SQL 更新 - 用更嚴謹的態度執行正式資料庫更新作業,滿足保留資料更新前後對照、過程與預期不同自動煞車、方便檢閱複核... 等要求。純 SQL 語法簡單明瞭,但施行有些前題:操作環境必須有安裝 GUI 或 Command Line 的 SQL Client 工具、操作人員必須具備 ... Read More
View ArticleVSCode PowerShell 中文編碼問題
自從體驗過用 VSCode 開發 PowerShell 的便利性,VSCode 便成為我的奧林匹克指定 PowerShell 開發工具。但有個小問題,在 .ps1 寫中文會變亂碼。 從微軟官方文件 Understanding file encoding in VSCode and PowerShe... Read More
View Article