Hello, Razor Pages! - 重溫 WebForm 的簡約風格
依循 ASP.NET 的發展規劃,WebForm 將留在原地,目送 ASP.NET Core 的車尾燈離去。(延伸閱讀:ASP.NET 簡史) 不過,與 MVC 相比,WebForm 以單一網頁為核心的精神並非一無可取,對一些超小型應用而言,硬要拆分 Model、View、Controller 反而... Read More
View Article再遇 Could not find a part of the path 'D:\WWW\MyWebApp\bin\roslyn\csc.exe' 錯誤
前陣子將程式碼搬到 TFS Git,偶爾需要重抓原始碼編譯後部署。用 Visual Studio 2019 從 Git Clone ASP.NET MVC 專案,直接發佈(Publish)並複製到測試台 IIS,執行時有幾次冒出以下錯誤: Server Error in '/MyWebApp' Ap... Read More
View Article圖片上的中文字,不會唸或輸入法找不到,該怎麼輸入?
大家有遇過這種狀況嗎? 被人問到圖片上的中文罕用字,知道寫法不知道怎麼唸,或知道唸法注音輸入法找不到,又沒法複製貼上,要怎麼輸入到電腦? 我今天就被同事抽考,有個難字,左部是耕耘的部首【耒】,右邊是得去掉彳字邊,不知怎麼唸,推敲它的倉頡拆碼【手木日一戈】也找不到,要怎麼輸入進系統? 研究過程發現好東... Read More
View Article【茶包射手日記】App_Code.dll 部署後網站發生找不到型別錯誤
眼看 Web Site Project 都快入土為安了,沒想到今天還能學到新知。(換言之,這篇文章的知識比北極還冷,非古蹟維護小組成員請迴避) 同事使用 wdproj 預先編譯 WSP 專案,部署到伺服器換版後,某支即時編譯的 ashx (C# 寫在 .ashx 裡) 冒出找不到 Namespace... Read More
View Article筆記 - 使用資料夾作為 NuGet Package 來源
習慣上 NuGet 程式套件最終會發佈到公司私服或公開 NuGet 伺服器,但針對一些簡單應用或私人測試情境,將 NuGet 套件發佈到本機或網路資料夾會更簡便。 最近練習了在本機建立資料夾當作 NuGet 來源,整理筆記如後。 首先,我在本機磁碟建立一個空的資料夾,例如:X:\LocalNuGet... Read More
View Article再談 IIS 與 ASP.NET 網站自動安裝設定 - 使用 PowerShell
先前整理過用 PowerShell 設定 IIS 的技巧,將原本 GUI 操作轉成指令檔,可以減少人為操作失誤的風險,並能實現自動化部署的理想。 最近又遇到類似需求,多學會一些安裝 IIS 與設定資料夾權限技巧,再整理一篇筆記溫故知新。 使用 PowerShell 安裝 IIS 如果是全新 Wind... Read More
View Article筆記 - 使用 PowerShell 清除停用 AD 帳號與 OU
遇到測試 AD 網域需要清理資料,再次靠 PowerShell 順利達成任務,筆記備忘。 案例一 清除停用員編帳號 因同步程式邏輯失誤,在測試網域殘留一堆已停用的 AD 帳號,有些掛在報廢 OU,致使誤判 OU 仍在使用中,形成大量垃圾資料。故我想使用 PowerShell 找出已停用的員編帳號自動... Read More
View ArticleManaged ODP.NET 高速 INSERT 資料
Managed ODP.NET 讓 .NET 程式擺脫對 Oracle Client 的依賴, 對常被 11.2 或是 12.1?32 或 64 bit 等版本鬼問題糾纏過的人就知道這點有多好, 故除非專案有不得已的限制,Managed ODP.NET 成為我寫 Oracle 相關 .NET 程式的... Read More
View Article【茶包射手日記】MSCOMCTL.OCX 異常疑案
2019 年,還要處理 ActiveX Control 在 IE 上的異常,是一種什麼樣的體驗?嗯,差不多是在大草原追逐一百頭羚羊的感覺~ T_T 接到使用者報案,某太平天國年間的網頁作品,其中用了 MSCOMCTL TreeView 控件,在特定使用者的 IE 上無法正常操作。 ActiveX C... Read More
View ArticleC# 小技巧:讓複雜型別屬性與資料庫欄位無縫接軌
今天來介紹一則私房小技巧,能讓 C# 的複雜型別屬性與資料庫欄位無縫接軌,抱著「花盆種出葱請朋友來家裡吃飯品嚐」的心情分享給大家。 舉個實例說明應用情境。假設我有個 C# 資料型別長這樣,其中包含一些非基礎型別(Primitive Type)屬性,像是自訂列舉、int[] 及自訂物件陣列(Medal... Read More
View ArticleCoding4Fun - 挑戰 JSON 體積縮小優化
最近的 Coding4Fun 專案是練習用 Razor Pages 寫英文單字測驗網站,其中有個情境是每次測驗時可選擇涵蓋難度等級、是否只顯示打星號的單字、是否略過已記住的單字,最後產生一組單字清單當成題庫。 為了方便能用相同字庫重新測驗一次比較成績,系統要保留完整單字清單及每題選擇題選項確保測驗基... Read More
View Article閱讀筆記 - 使用 .NET Async/Await 的常見錯誤
看到一場 NDC 演講(Norwegian Developers Conference,NDC 是 歐洲最大的 .NET / Agile 開發者研討會),獲益不少,筆記分享之。 影片:https://www.youtube.com/watch?v=J0mcYVxJEl0 投影片:https://w... Read More
View Article笨問題 - UTC 與本地時區 DateTime 比較
今天踩了個低級錯誤的雷,分享一下。 網頁上有個欄位輸入預期執行日期時間,後端檢核時需比對不得早於現在時間,前端傳入的 JSON 已轉為 UTC,例如在 7/25 選明天(7/26), 會得到 "2019-07-25T16:00:00Z",用 JsonConvert.Deseria... Read More
View Article【茶包射手日記】IIS Express 無法啟動錯誤
不知道是不是水星逆行影響,最近茶包特別多... 開了 Visual Studio 2019 在改網頁程式,接到使用者通報用 VS2019 再開另一個專案查問題,改好程式按 F5 測試卻噴出以下錯誤: 開啟記錄檔看到的詳細訊息如下: Unable to launch the IIS Express ... Read More
View Article設定 IE 新頁籤開啟首頁
同事詢問,IE 明明有設了首頁,但開新視窗時出現的卻不是首頁,而是有一堆照片的奇怪網頁,是不是中毒了? 楞了一下才想到她在說什麼。是這個: 我的 IE 也是這樣,點頁籤列最右側的開新頁籤圖示時會出現,一不小心就被吸引進去刷新聞看八卦,罪過罪過。 找了一下,設定在「網際網路選項 / 一般 / 開放新... Read More
View ArticleVS2017/2019 切換英文介面
雖然先前已寫過切換 Visaul Studio 2015 語系的方法,VS2017 起有點小改變。 在中文版 Windows 安裝 Visual Studio 2017/2019,預設會裝成中文介面,某些術語翻譯成中文怎麼看都彆扭(重訂基底、擷取、提取、推送...),還是換成英文比較自然: VS2... Read More
View ArticleVisual Studio Publish 網站缺檔怎麼辦? 小試 MSBuild 自訂步驟
使用 Visual Studio 發佈( Publish )一個使用 System.Data.SQLite 的 ASP.NET MVC 專案,部署到 IIS 後發生錯誤: Unable to load DLL 'SQLite.Interop.dll': The specified module c... Read More
View Article.NET 非同步程式小技巧:GetAwaiter().GetResult() 與 Result 的差異
閱讀筆記 - 使用 .NET Async/Await 的常見錯誤提到「需要等待結果才繼續執行的場合,宜用 .GetAwaiter().GetResult() 取代 .Result」,這點喚起我過去寫非同步程式的回憶:設了 try catch 也捕捉到錯誤,但回拋的錯誤訊息看不出所然。 既然學會 Ge... Read More
View ArticlePowerShell 小程式 - 壓縮並刪除一個月前的 Log 檔
Web 主機上 Log 成長頗快,我想寫個小程序將時間較久的 Log 以月為單位壓縮儲存節省空間。 實測壓縮後體積只剩 3%,足足減少 30 倍有餘,估計可省下大量空間。 類似的工具之前寫過 C# 版,這回試試用 PowerShell 解決。 Log 檔一天一個,壓縮排程設在每月第一天。執行時前一個... Read More
View Article閱讀筆記 - 誰說技術非得潮,老而彌堅才叫好
在這個開發者不學新技術會被嘲諷成原始人的時代,我們不乏吹捧讚嘆新技術的推坑文(不說別人,我自己就常寫)。 前幾天讀到這篇「我是一名技术总监,被技术选型给埋坑里了」 宛如清流,格外覺得痛快,切中過去幾年自己的觀察體驗,講出我說不出口的心聲。 這篇中文文章源自 Dan McKinley 2015 年的老... Read More
View Article