The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

如何快速建立 Oracle Database Server 12c R2 資料庫容器並建立使用者

最近越來越多 ASP.NET Core 企業內訓需求,有客戶提到希望能在上課的時候展示 Entity Framework Core 與 Oracle 資料庫的整合能力,我第一時間就想到要在本機安裝 Oracle 資料庫容器起來,快速建立可開發測試的環境。不過,雖然建立 Oracle 資料庫容器相當簡單方便,但不太熟悉 Oracle 資料庫特性的我,卻連第一步「建立使用者」都沒辦法成功,錯誤訊息也相當難以理解,花了一些時間才找到解決之道。

... 繼續閱讀 ...

如何在 VSCode 設定完整的 .NET Core 建置、發行與部署工作

現在越來越多專案改用 .NET Core 進行開發,而且大部分都部署在 Linux 平台,不過開發環境一直都是在 Windows 平台之上,要怎樣有效率的整合本地端的開發與建置工作,甚至於設定可以輕鬆將發行檔案到遠端的部署流程,都是一關關的考驗。本篇文章我打算分享我這邊 VSCode 的設定方式,看我如何將常見的命令自動化。

... 繼續閱讀 ...

如何將 SCD 部署的 .NET Core 應用程式封裝單一可執行檔 (Warp)

我們知道 .NET Core 應用程式有兩種部署方式,一種叫 FDD (框架相依的部署),另一種叫 SCD (自封式部署)。當使用 SCD 部署的時候,可以直接指定平台(RID)進行封裝,不過缺點是檔案數量檔案大小都非常驚人,唯一的好處就是目的電腦不用安裝 .NET Core Runtime 就能執行程式。本篇文章我將介紹一套用 Rust 程式語言寫成的 Warp 工具,幫助你將檔案封裝成單一執行檔。

... 繼續閱讀 ...

如何在 .NET Core 主控台專案中使用 DI (相依注入) 並取得 ILogger 服務

速度快錯了嗎!疑?這篇文章的起頭好怪。因為今天在寫 .NET Core 程式的時候,一份很簡單的程式碼,卻怎樣都無法正確執行,嘗試了各種寫法還是鬼打牆,寫到有點懷疑人生。今天我就順便把 .NET Core 中設定 DI 與使用 ILogger 物件的過程詳細交代一遍,請看官務必看到最後喔!

... 繼續閱讀 ...

如何在 Visual Studio 2017 對 .NET Core 專案啟用分析器功能

在 Visual Studio 2017 裡面,有個好用的「分析器」功能,可以幫助開發人員寫好程式。他的作法是在背景執行一連串的程式碼分析,透過一組規則集 (RuleSet) 對專案中的程式碼進行剖析與檢查,如果有發現任何問題,就會在「錯誤清單」中呈現資訊、警告或錯誤,並且提供部分規則的自動修復功能。不過,在 Visual Studio 2017 對 .NET Core 專案的支援度並沒有太多文件著墨,我花了好多時間才研究出背後的差異之處。我打算透過本篇文章分享如何在 Visual Studio 2017 啟用與設定 .NET Core 專案的程式碼分析器功能。

... 繼續閱讀 ...

如何將現有 .NET Core 專案加入相對應的 xUnit 單元測試專案

在 Visual Studio 2017 開發工具裡,建立單元測試專案有好幾種方法,其中一種是將現有專案增加一個相對應的單元測試專案。在傳統 .NET Framework 專案中,很輕易的就可以建立完成,只要在任一類別上按下滑鼠右鍵,選擇「建立單元測試」即可。但在 .NET Core 專案中就沒那麼方便了,因為這個功能一直沒被實現。本篇文章將分享如何依據現有專案的程式碼,產生相對應的單元測試專案,一步一步帶大家了解建立單元測試專案的過程。

... 繼續閱讀 ...

如何使用 .NET Core 2.1 內建的 dev-certs 命令管理開發環境的自簽憑證

從 .NET Core 2.1 開始,.NET Core SDK 就內建了 SSL 憑證管理工具 (dotnet dev-certs),透過 dotnet new 建立的 ASP.NET Core 專案範本,Kestrel Web Server 也會預設啟用含有 HTTPS 的加密網站連結。以往我們在開發環境設立一張「有效的 SSL 憑證」還挺麻煩的,我之前還寫過好幾篇文章分享。今天我就來介紹 .NET Core SDK 2.1 內建的標準作法。

... 繼續閱讀 ...

如何在多個 .NET Core SDK 版本之間進行切換 (global.json)

由於同一台電腦可以安裝多個版本的 .NET Core SDK,每個版本的 SDK 都會包含完整的工具組、執行環境、組件庫與編譯器等等,所以蠻多人詢問過我這個問題:「當安裝了許多不同版本的 .NET Core SDK 之後,要如何才能使用舊版 dotnet 命令,執行 dotnet newdotnet build 之類的命令。」這部分其實並不困難,只要設定 global.json 即可。

... 繼續閱讀 ...