[廚餘回收] Jenkins 在 Windows 的安裝路徑最好不要含有空格

會有這個結論的起因是 Jenkins 有一個 Ruby Runtime Plugin,有很多 Plugin 會相依於它,雖然它最近一次更新的日期是在 2013 年 6 月 5 日,但依舊每個月都會有一萬多個安裝,而且跑在新版本的 Jenkins 也沒什麼問題(目前最新版本是 2.60.3),但是在 Windows 環境底下要安裝它就會有可怕的事情發生。

...繼續閱讀 »

[廚餘回收] 在 CentOS 7 上安裝 MySQL 踩了幾顆地雷

原以為在 CentOS 7 上安裝 MySQL 是探嚢取物,照著官方的步驟按圖施工,必定成功,還是踩了幾顆地雷炸掉我不少時間,我選擇安裝 MySQL 的方式是用二進制包(Generic Binaries)的安裝方式,這種方式可以讓我更方便地修改環境變數,照著官方的步驟是一定可以安裝成功的,但是有幾點我們需要注意一下。

...繼續閱讀 »

[小菜一碟] 使用其他 SSH 用戶端登入到 Google Compute Engine 的 Linux VM

GCP(Google Cloud Platform)在台灣有設置資料中心,除了常見的 AWS、Azure 之外,如果我們主要的目標用戶都在台灣,GCP 也是一個可以考慮使用的雲端平台,GCE(Google Compute Engine)是 GCP 提供的一個建置 VM 的服務,本篇文章記錄的是在 GCE 開了一台 Linux VM 之後,如何透過第三方的 SSH 用戶端登入到 VM 裡面?

...繼續閱讀 »

[廚餘回收] 要發 HTTP PUT、DELETE Request 到 IIS 站台卻收到 404、405 的錯誤訊息

相信很多朋友都有遇到過,我們用 ASP.NET MVC 或 ASP.NET WebApi 做好的標記有 HttpPut、HttpDelete 的 Action,部署到 IIS 伺服器之後,試著去發 Request 卻收到 404、405 的錯誤訊息,除非我們只寫 HttpGet、HttpPost 方法,不然有大於 87% 的機率會遇到,底下就來記錄一下解決的方式。

...繼續閱讀 »

[小菜一碟] 儲存效能計數器(Performance Monitor)的設定以利重複使用

偶爾我們會打開效能計數器,加入幾個 Counter 像是 Processor Information - % Processor TimeASP.NET v4.0.30319 - Requests CurrentASP.NET v4.0.30319 - Requests Queued,來觀察系統目前的狀況。

不過我們很辛苦地萬中選一挑出我們想要的 Counter 之後,想要儲存起來重複使用卻沒辦法,下面就針對將效能計數器的設定儲存起來重複使用的方法做個記錄。

...繼續閱讀 »

[食譜好菜] BundleConfig 在 ASP.NET Core 還存在嗎?

原先從 ASP.NET MVC 4 開始就有的能幫助我們針對 js、css 靜態檔案做 Bundling 及 Minification 的 BundleConfig 到了 ASP.NET Core 還在嗎?答案是有的,只是換了一種使用方式,大致上還是跟原先一樣有兩個步驟:

  1. 設定要 Include 的指令碼檔案
  2. 在 View 裡面嵌入使用

但實現細節卻大不相同,我們來看看是怎麼個不同法?

...繼續閱讀 »

[食譜好菜] 替 Selenium WebDriver 加上 Proxy 的設定來加快測試的速度

我們使用 Selenium WebDriver 在做 Web Testing 的時候,測試對象往往已經是接近 Production 的狀態,多少會使用一些外部資源,像是 cdnjs.cloudflare.com、ajax.googleapis.com 的 CDN 服務,萬一網路不給力,整個測試行程 run 下來會多很多時間,這時候我想到可以架設 Proxy Server 來專門服務 Selenium,藉由 Proxy Server 降低存取外部資源的延遲時間,如果我們公司內部已經有架好的 Proxy Server 當然就不需要我們自己動手了。

...繼續閱讀 »

[食譜好菜] 用 Dapper 取得一對一關係、一對多關係及多型資料結構的資料都只需要一次 Query

  • 8732
  • 0
  • C#
  • 2022-07-19

關聯式資料庫的資料都是以表格型式呈現為主,而物件導向世界的資料型式是階層式的,面對這兩種資料呈現的型式,程式設計師在資料表的設計上著實燒腦,過去很多教授 ADO.NET 的書籍範例只會教用 DataSet、DataTable、SqlDataReader 來處理從資料庫取得的資料,如果我們直接照著用,當所面臨的需求不再如同書本範例簡單的時候,程式寫起來挺痛苦的,而我們也沒辦法享受到物件導向設計帶給我們的好處,如果我們在工作上還是需要自己下 SQL 語句,Dapper 會是我們的好幫手。

...繼續閱讀 »