這兩年前端寫得少,Vue 筆記呈現「外出取柴」狀態轉眼也一年多。這段期間仍在留意 Vue.js 發展,專案上也用 Vue 取代 AngularJS 實作過幾個網頁的 MVVM,但嚴格來說沒什麼長進。
前幾週有網友問起老程式 - 中文編碼解析工具,讓我興起念頭,不如把它改成網頁版順便開源吧! 想當然爾... Read More
↧
Vue筆記4-Vue.js + TypeScript + ASP.NET Core
↧
使用 Nginx 將 ASP.NET Core 掛為子網站
之前已介紹過在 Linux 執行 ASP.NET Core,並透過 Nginx 反向代理對外提供服務。(參考:ASP.NET Core + Nginx on CentOS 安裝筆記)
先前的做法都是透過 /etc/nginx/conf.d/xxx.conf 定義 server_name www.xx... Read More
↧
↧
ASP.NET Core 2.0 升級 2.2 雜記
發現前幾天提到的 ASP.NET Core with Vue 專案範本,因未納入官方支援的版本較舊停在 ASP.NET Core 2.0。
我的 Coding4Fun 專案用 2.0 跑其實也沒有什麼問題,但想想未來難免遇到需升級 .NET Core 版本場合,趁機累積點經驗也好。
ASP.NET ... Read More
↧
CODE-查詢特定網址的臉書按讚數
Coding4Fun 過程產生一個統計 FB 按讚數的小需求,手上有一份 URL 清單,我想統計各網頁臉書分享區塊的按讚數。(即下圖中的 239)
之前我用過一個笨方法,用 WebClient 抓該區塊的 IFrame 網址抓回 HTML 再從中解析,這回試試更有效率的正統做法。
Facebook... Read More
↧
使用 ClosedXML 結合 LINQ 操作
ClosedXML 是我用程式操作 Excel 時的奧林匹克指定程式庫(參考:令人驚豔的Excel程式庫 - ClosedXML),在 .xls 格式退休後,在 .NET 中要讀寫操作 Excel 檔案,非它莫屬,尤其結合 LINQ 用來更是得心應手。最近學到一點小眉角,筆記備忘。
假設我有個 Ex... Read More
↧
↧
VS2017 ASP.NET Core 發佈與執行問題兩則
前幾天研究過 ASP.NET Core 2.0 升級 2.2,今天手癢把部落格也從 ASP.NET Core 2.1 升到 2.2,遇到兩起小問題,學到一點新經驗,記錄如下:
VS2017 建置與執行無誤,但發佈(Publish)出錯
使用 VS2017 修改專案屬性升級到 2.2,並微調 NuGe... Read More
↧
好 LINQ,不用嗎?
LINQ 誕生超過十年(2007 隨 .NET 3.5 一起問市),我平日寫 .NET 程式早已「無 LINQ 不歡」,上癮程度甚至接近「無 LINQ 吾寧死」
(LINQ or Die),但我知道有不少朋友在開發時,會參考前人程式或依循習慣(或現有程式庫),繼續沿用 DataTable,for 迴... Read More
↧
【答客問】用 LINQ 實作 Pivot 轉換
網友發問:「 LINQ 可以對物件陣列進行 Pivot 轉換嗎?」 Sure, Of Course, Why Not?
對 Pivot 印象模糊的同學可先溫習這篇:Using PIVOT In SQL 2005,而本文也直接用該文的 Log 統計當例子。
假設原始資料長這樣:
LogTime St... Read More
↧
Swagger 初試筆記
一直以來,開發 WebAPI 我都很習慣用工具自動產生線上文件、線上測試介面以及客戶端程式庫,節省增刪介面方法後要同步調整文件及程式庫的工夫。
在 Swagger 流行之前,有好幾年的時間我都是靠土砲版 CodeGen 工具,用 Reflection 掃瞄 WebAPI 介面,從 XML Docum... Read More
↧
↧
再探 WebAPI 客戶端自動產生器 - AutoRest、NSwag 與 .NET 3.5 支援問題
在部落格分享心得有一項好處,是不時會獲得讀者們熱心回應,補上被我忽略的寶物利器,有些未必學得了跟得上,但保持眼界開闊總是好的,避免淪為資深井底蛙。
Swagger 初試筆記一文發表後,網友再補充了兩件好東西:
AutoRest
微軟開發的 OpenAPI 規格客戶端程式碼產生工具 (感謝 Chri... Read More
↧
HttpClient,using 還是 static?
很早之前看過一篇關於 HttpClient 生命週期的討論,當時沒什麼感覺,這陣子研究 NSwag,注意到 NSwag 產生的客戶端程式庫,HttpClient 預設被當作建構式參數,由外界傳入生命週期自理。
但一方面它又提供參數允許採用每次呼叫自動建立的可拋做法,並可選擇是否使用完畢要不要 Dis... Read More
↧
ASP.NET WebAPI 2 - 使用 POST Body 傳送多參數
Swagger 背後的生態系統豐富,為享受寫好 WebAPI 後用現成工具自動產生文件、測試網頁、客戶端程式庫的便利,我準備調整 WebAPI 的開發策略。
過去我主要是用 ASP.NET MVC Controller 實作 WebAPI,即(範例教學:使用 ASP.NET MVC 打造 WebAP... Read More
↧
NSwag Studio C# 程式產生器客製化
評估過 AutoRest、NSwag、Swagger CodeGen 的客戶端程式碼產生功能,我選擇 Swag Studio,理由是 GUI 介面友善,不依賴第三方套件,且輸出結果為單一檔案,較符合我的要求。
實務應用上,難免需要微調產出結果以符合專案的特殊要求,而我遇到的情境得支援 .NET 3.... Read More
↧
↧
使用 C# 寄出紅色主旨 Outlook 郵件
收到冷門需求。
公司人資會寄一種很炫的通知信,在收信匣萬黑叢中一點紅,十分顯眼。業務單位看到了,舉手說他們也要,希望某系統的重要通知信也能比照變成紅色主旨並跳出提醒,力求從茫茫信海脫穎而出:(如下圖所示)
紅色主旨之前看過,但從沒去想是怎麼辦到的。研究後發現是個 Outlook 小技巧 - 寄信時... Read More
↧
npm 安裝套件時發生 unable to get local issuer certificate 錯誤
在公司用 npm 裝 Chromium,因為網路設備會置換 SSL 憑證的緣故,不意外地遇上 unable to get local issuer certificate 錯誤。爬文,較常見的解法是設定 npm config set strict-ssl false 暫時關閉 SSL 檢查,麻煩一點... Read More
↧
2019 蘆竹馬
2019 年我的首場賽事 - 蘆竹馬~
第一次參加,會場海湖地景公園位於竹圍漁港旁,看報名簡章賽道貼著海岸線,腦中浮現的是萬金石浪濤為伴的奔跑場景,實際跑過,發現它完全不像海岸馬,而是不折不扣的美食強化版國道馬~
六點整全馬半馬一起開跑,聲勢浩大。
起跑不到兩公里便轉上 61 快速道路,北上車道封... Read More
↧
Powershell 學習筆記
前陣子體驗到 Powershell 免編譯可直接修改調整的好處,而明文格式人眼可辨,列入 SOP 移交 OP 接受度較高,加上 Powershell 已取代 VBScript 成為微軟系統管理腳本主力,相關資源豐富,近期手邊有些排程應用,便計劃改用 Powershell 解決。
寫著寫著發現一個問題... Read More
↧
↧
野外求生系列 - 徒手製作 .NET .exe
野外求生系列又來了,今天要示範「如何在沒有開發工具(Visual Studio、VSCode、MSBuild、LINQPad...)的環境生出 Console Application .exe 整合既有 DLL 程式庫做測試?」
情境是這樣的,主機上有某支 .NET 程式出錯,我們嚴重懷疑是某段 O... Read More
↧
野外求生系列 - 使用 Powershell 測試現有 DLL
前篇文章介紹了如何在無開發工具的管制環境撰寫 Program.cs 並轉為 Program.exe,以便在執行環境修改與測試現有 DLL 程式庫重現問題。
前陣子從頭學習了 Powershell,知道 Powershell 可直接引用 .NET 類別,理論上也能做到同樣的事。
但實際做過一回才發現沒... Read More
↧
Visual Studio 2019 來了! 新功能快速整理
地表最強開發工具,Visual Studio 於 2019/4/3 釋出 2019 正式版,在 FB 被洗版一整天,不安裝說不過去,所以...
VS2019,我來了!
還沒時間細細體驗,先從官方文件了解 VS2019 有哪些新功能,以下是快速整理:
(新功能重點整理裡有詳細說明、擷圖及示範影片,值... Read More
↧