2020-05-23 12:23 PM 0 2,828
最近常在寫自動化及半自動化工作腳本,愈發覺得 PowerShell 好用,尤其能無縫整合 .NET 程式庫這點讓它威力無極限。但也開始學到一些實用但我之前沒學過的用法,會在 PowerShell FAQ 系列陸續整理分享。 【問題】PowerShell Function 如何接收外部函式作為輸入參數...
2020-05-22 08:55 PM 0 4,501
同事報案,某支 DOS Batch 排程無法執行,出現錯誤代碼 2147942667: Task Scheduler failed to launch action "C:\Windows\SYSTEM32\cmd.exe" in instance "" of...
2020-05-21 10:24 PM 5 3,284
說來也算 .NET 的笨問題,但我第一時間竟有些迷惑,做個實驗強化信念。 疑問是下圖中的 Prop1、Prop2 是否每次取用都會重新執行,傳回不同結果? 完整程式如下: using System; using System.Collections.Generic; using System.Di...
2020-05-20 09:00 PM 0 2,015
前一篇文章我學到一個 .NET 組件編譯名詞 - Determinism。是指 .NET 編譯組件時停用加入 Timestamp 及隨機產生的 GUID 的做法,改以原始碼內容、工作路徑... 等條件為依據,確保相同程式碼在相同環境編譯出來的組件二進位內容完全一致,這有助於識別組件是否來自可信任來源...
2020-05-19 09:20 PM 0 3,546
在 Visual Studio 2019 想將 .NET Framework 專案設定版號自動跳號時卡住。 AssemblyInfo.cs [assembly: AssemblyVersion()] 上方的註解明明還提示可以寫成 1.0.* 讓系統自動跳號產生第三及第四段的 Build 及 Rev...
2020-05-18 09:47 PM 11 15,906
這是改寫 ASP.NET Core 後的一大困擾,ASP.NET Core 預設會將 .cshtml 編譯成 YourApp.Views.dll,不再像以前可以直接修改 Views 資料夾下的 .cshtml,重新整理瀏覽器就看修改後的結果。必須停止偵錯,重新編譯執行才會更新。 這項調整讓我的前端程...
2020-05-13 09:59 PM 0 5,968
在 VS2019 (版本 16.3.9) 開了新的單元測試專案,在 Test Explorer 可以看到測試方法,但測試無法執行。按下測試鈕後,測試無聲無息結束,執行測試數為 0,也沒傳回錯誤。同一個 Solution 有另一個 .NET Core 寫的 MSTest 單元測試 則一切正常測試。 O...
2020-05-12 08:26 PM 0 27,781
同事報案,某個排程執行有錯,錯誤訊息如下。 失敗的應用程式名稱: AppCrash.exe,版本: 1.0.0.0,時間戳記: 0x84a8515b 失敗的模組名稱: KERNELBASE.dll,版本: 10.0.18362.535,時間戳記: 0x5bd9df62 例外狀況代碼: 0xe0434...
2020-05-11 10:45 PM 0 4,418
先懺悔一下好了。前篇討論 LINQ 邏輯執行時機的文章不小心示範了「好寫好用但不該推廣的技巧,」但未加註「叔叔有練過,小朋友不要學」或「叔叔在寫 Side Project,不會害到人」警語,恐有誤導之嫌。撰文前其實曾閃過「是否不妥」的念頭,但想想覺得還好便沒放心上。貼文後讀者 Shu Huan Hu...
2020-05-10 09:25 AM 4 5,957
分享我前幾天犯下的 LINQ 低級錯誤。 程式需求是從外界拿到一個型別為 Dictionary<string, string> 的 IP 對應表,我想跑迴圈檢查其中 IP 地址字串是否都合法,而專案裡剛好有個 ParseIp() 函式是用 IPAddress.TryParse() 解析傳...
2020-05-09 09:29 AM 8 3,341
在同事的 LINE 群組看到這個據說是小三的趣味數學題(是國小三年級啦,有人是衝著狐狸精才點進來看的嗎?)。 請在下列方格內填入 1-9 的數字以滿足等式: 應該可以用相乘、相加不可超過百位數的限制先過濾掉一些組合再嘗試排列求解,BUT... 小孩子才用紙筆,我偏要用 Coding 早上晨跑腦袋閒...
2020-05-07 09:30 PM 2 4,839
同事報案,遇到一宗罕見的 .NET Namespace 命名衝突問題,我用以下專案結構模擬案發現場: 專案 Darkthread.Mobile 參照了 Utility 與 Darkthread.Utility 兩個 Class Library 專案。 Utility 專案有個 Uitlity.Re...
2020-05-06 04:39 PM 0 3,281
即便後來出現眾多標榜速度的 .NET JSON 程式庫,連 .NET Team 也推出自己的版本 System.Text.Json,強調效能翻倍記憶體更省,但 Json.NET 仍是我心中現階段處理 JSON 的不二選擇。 今天遇到一個較少見的需求,有一個 JSON 結構如下: { "...
2020-05-05 08:35 PM 0 7,115
我有個需要中介伺服器轉接 WebAPI 請求的情境,ApWeb 主機與 ApiWeb 主機間網路不互通,故需要在中間網段架設 Proxy 串接,之前玩過 IIS ARR ,打算找台 IIS 設成 Reverse Proxy 負責轉送 ApWeb 主機發出的 WebAPI 請求。ARR 之前已設過幾次...
2020-05-03 07:55 AM 4 46,998
上篇文章介紹了 Visual Studio 的兩項祕密武器 - Source Link 及 Decompile Source Code 功能,能幫助我們針對開源 NuGet 程式庫,甚至對沒有源碼的第三方程式庫逐行偵錯。今天再補充一件無源碼偵錯的神兵利器 - dnSpy。 在 Visual Stud...
2020-05-02 09:36 AM 4 10,213
面對刁鑽的 .NET 程式問題,開 Visual Studio 用 F5 Line-By-Line 逐行偵錯是最犀利的破解手段,出錯之前先設定中斷點,按 F10、F11 一步步逼近爆炸中心,配合逐一檢查各變數是否符合預期,通常很快真相就能水落石出。但如果爆炸點在第三方程式庫呢? 如果第三方程式庫為開...