[食譜好菜] 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

  • 488
  • 0
  • C#
  • 2017-07-24

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

...繼續閱讀 »

[小菜一碟] Autofac.Extras.DynamicProxy 中 EnableInterfaceInterceptors() 及 EnableClassInterceptors() 的區別

在設計中加入 AOP 著實會讓程式碼清晰度大增,讓程式的職責更清楚,Autofac 中的擴充套件 Autofac.Extras.DynamicProxy 可以輕鬆地讓我們實現 AOP 的功能,在註冊完後可以呼叫 EnableInterfaceInterceptors()EnableClassInterceptors() 的其中一個方法來啟用 Interceptors,而這兩個擴充方法的區別又在哪?

...繼續閱讀 »

[桌邊服務] 為什麼要儘量遵循物件導向設計原則及模式?

時常回到原點思考,可以幫助我們確認做這件事情的價值,物件導向設計原則及模式在網路上有很多文章在介紹它,一篇比一篇寫得還詳細,但是搜尋「為什麼要遵循物件導向設計原則及模式」,文章的數量就不多了,原因我想大概就是有些事情必須要切身體會,才會有所體悟。

...繼續閱讀 »