有使用者反映 Chrome/Edge 無法自動登入使用 Windows 整合驗證 IIS 網站,會彈出登入對話框,敲完 AD 帳號密碼才能登入,有一部分使用者則可以用登入 Windows 的 AD 帳號自動登入,不需要敲密碼。 原以為跟上回一樣是 AD 傳輸被擋造成,但本次案例 URL 是用 IP,...

使用者投訴,某審核作業網頁,點選超連結應另開視窗,卻遲遲無反應,懷疑我們系統有狀況,效能出了問題。 依直覺推論,超連結顯示出來了代表後端處理已完成,開新視窗不是用 showModalDialog 就是 window.open(),都發生在瀏覽器端,應與伺服器端效能無關;超連結網頁來自其他系統位於不同...

前情提要:之前寫程式存取 Exchange 收發信,我都是用 EWS API,用 AD 整合式驗證(企業環境)或應用程式密碼(Internet 線上版)執行作業,但 2022/10/1 起微軟停用了雲端 Exchange (Office 365 信箱)的 HTTP 基本驗證,後者已不能再用密碼存取 ...

【本系列是我的 C# in Depth 第四版讀書筆記,背景故事在這裡】 (筆記跳過書本第六章 Async Implementation,該章深入剖析編譯器將 async/await 展開產生的狀態機程式實作細節,議題獨立且對日常開發幫助不太,未來有需要再看) 依我個人觀點,C# 2.0 加入泛型、...

這些年在 JavaScript 處理 XML 的機會愈來愈少,但從事古蹟翻新與維護難免遇到。最近想為老系統增加一個編輯及檢視 XML 的小工具,有兩個小需求: 想讓 <textarea> 輸入的 XML 內容依標準縮排規則排版 提供可以展開、縮合 XML 節點的互動式 XML 檢視器 ...

講到 Git 分支管理,我不愛用 GUI 工具,是個鐵桿指令派。慣用做法是在 VSCode 開啟 Git Graph,按 Ctrl+Shift+` 在下方開個終端機,下指令整理分支或執行合併,下完指令馬上從 Git Graph 線圖驗證結果是否符合預期。 我愛用指令的一大原因是方便與團隊成員溝通,...

【本系列是我的 C# in Depth 第四版讀書筆記,背景故事在這裡】 C# 5 帶來非同步函式 Asynchronous Function 的概念 - 加了 async 修飾詞的方法或匿名函式、Lambda Expression,並在其中使用 await 運算子執行 Await Expressi...

前文發表後,許多讀者提醒我 VSCode 本身就支援 Jupyter Notebook 編輯。靠! 這才發現自己差點錯過好東西。 關於 VSCode 對 Jupyter Notebook 的支援說明可參考官方文件,這裡簡單總結一下。 VSCode 要先安裝 Jupyter 擴充套件 要在 Jup...

前陣子試玩了 Azure AI 服務,開始看一些機器學習的東西,不知不覺,水愈來愈深(抖),但眼界也開始開闊起來(從井口擴大到噴水池的程度吧),我感到充實而欣慰。 Python 有個很酷的東西叫 Jupyter Notebook,簡單說是一份可以直接在上面跑敲指令跑程式的網頁文件(後來微軟也做了類似...

車上的行車紀錄器已服役近十年。說來也妙,一年多前換前擋隔熱紙重裝後吸盤老吸不住,三天兩頭掉,換到後來支架塑膠也老化碎裂,原本要換新,但歷經我研究改良數次,最後用信用卡、強力膠加手機玻璃貼 DIY 修好,念在花了這麼多時間,又變成捨不得丟,就接著用下去。 行車紀錄器有顆鋰電池維持系統基本運作,熄火 ...

【本系列是我的 C# in Depth 第四版讀書筆記,背景故事在這裡】 C# 4 帶來的一大改變是 dynamic,讓靜態型別語言也能享受動態型別語言獨有的福利,再加上 Optional Parameter,簡化了與 COM+ 世界溝通的成本。而 Gereric Variance (官方翻譯是泛型...

分享前陣子新學到的 Git 小技巧,假設我有 Git 分支狀態如下: 從 fetaureA 開了分支 featureX 做了四次 Commit (Commit-X1 ~ Commit-X4),現在想將 featureX 改成從 featureB 分支出來,如下圖: 要在分支上完成這種移花接木動作...

【本系列是我的 C# in Depth 第四版讀書筆記,背景故事在這裡】 讀書記筆晃晃悠悠來到 C# 3 惹。C# 3 的改良重點集中在 LINQ,許多新特性算是配合 LINQ 而生。以今天的角度來看,心得可能會是「靠,這還要講?」,請用溫故知新的心態面對,哈。 筆記附上各特性的原文術語,未來 Go...