想用單元測試專案單獨測試 ASP.NET Core 裡的 EF Core DbContext,一時間傻住不知如何下手,就知道又有基本功要練了。ASP.NET Core 重度依賴 DI,網站專案如要使用 EF Core DbContext 物件需在 Controller 或 Service 建構式新增...

從 ASP.NET 5 轉進 ASP.NET Core,有些地方需要重蹲馬步打基礎。 拿最近遇到的切換匿名存取或 Windows 驗證為例。ASP.NET + IIS 的話是從 IIS 管理員或由 web.config 設定;IIS Express 則可用 Visual Studio 專案屬性視窗...

改寫 .NET Core 後逐漸感受到與 .NET Framework 專案的差異,例如:程式庫一樣是透過 NuGet 安裝及更新,但 .sln 目錄下熟悉的 packages 資料夾不見了。 Visual Studio 建立 .NET Framework 專案時,會將下載的 NuGet 程式庫放在...

這幾年流行一種「登錄才有但無限量的優惠」: 優惠沒有限量,所以登錄不是為了限制人數先搶先嬴。登錄程序只要按個鈕,不用填寫資料,不是為了蒐集行銷個資。動動手指就能享受優惠,幾乎等同白給,但又不是全面降價?商家打的是什麼算盤?背後的原理是什麼? 類似設計在生活中比比皆是,例如:(都是我親身經歷過的) ...

系統遭遇亂流,有段 ADO.NET 程式開啟 Transaction 進行資料庫更新,執行期間會呼叫第三方 Web Service,依回傳結果決定 Commit 或 Rollback。這幾天因 Web Service 異常,偶爾執行時間會超過 60 秒(正常狀況應不超過 3-5 秒),超出預設的 W...

網友問到:網頁使用 ASP.NET Session 保存資料,因輸入內容較多加上使用者需接電話或離開辦事,操作過程常超過 20 分鐘,送出表單時 Session 資料早已逾時被清除導致錯誤。遇到這種情境,除了延長逾時期限(預設值只有 20 分鐘自有其考量,過長會導致使用者關閉網頁後資料仍殘留在伺服器...

寫 LINQ 再遇上 Value Type vs Reference Type 比對問題,雖已是老掉牙的觀念,卻還是失神絆了一下,特筆記備忘兼加深印象。 LINQ Except() 可以快速列出兩個 IEnumerable<T> 集合的差異項目,Intersect() 則可找出交集項目,...

寫網頁的同學們應該都有遇過這種需求?只要是矩陣式網頁輸入介面(如下圖),幾乎都會遇到使用者許願:「我能不能先在 Excel 敲好再用匯入的?」 說實在話,如果我是使用者也會覺得這是好用介面的必備條件。網頁介面再怎麼厲害,跟 Excel 永遠不會在同一個量級,加上許多使用者終日與 Excel 為伍,...

從 TFVC 轉換到 GIT 後(延伸閱讀:該用 TFVC 還是 Git?),我的版控習慣與態度有兩大改變。 以前使用 TFVC 時,程式要丟進 TFS 伺服器才能做版控,我常在本機寫些實驗性質或私房工具小專案,不好把公用伺服器當自己家,就沒做版控無法享受改壞可以重來的便利;GIT 支援離線使用,現...

自從體驗過用 VSCode 開發 PowerShell 的便利性,VSCode 便成為我的奧林匹克指定 PowerShell 開發工具。但有個小問題,在 .ps1 寫中文會變亂碼。 從微軟官方文件 Understanding file encoding in VSCode and PowerShe...

先前談過防禦式 SQL 更新 - 用更嚴謹的態度執行正式資料庫更新作業,滿足保留資料更新前後對照、過程與預期不同自動煞車、方便檢閱複核... 等要求。純 SQL 語法簡單明瞭,但施行有些前題:操作環境必須有安裝 GUI 或 Command Line 的 SQL Client 工具、操作人員必須具備 ...