The Will Will Web

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

使用 .NET Generic Host 建立 Console 主控台應用程式 (.NET Core 3.1+)

我們會將 .NET Generic Host 用在 ASP.NET Core 或 Worker Service (背景服務) 這類需要運行在長時間執行的應用程式中。不過,若只是僅執行一次的這種單純的 Console 主控台應用程式適合用 .NET Generic Host 來建立應用程式架構嗎?是的,當然適合,而且還有很多附加的好處。

... 繼續閱讀 ...

深入理解 C# 7.1 提供的 async 非同步 Main() 方法

我們在開發 .NET 應用程式的時候,預設選取的 C# 語言版本為「最新已發行主要版本」(latest major version),如果以 Visual Studio 2017 v15.9.10 來說,內建的 C# 最新發行版本就是 7.3 版,因此主要版本就是 7.0 版。本篇文章要來介紹 C# 7.1 提供的一個語法糖,它能讓你的 Console 應用程式,將主程式的進入點 Main() 方法也能宣告為非同步(async)的版本,好讓你從頭到尾都用非同步的方式開發應用程式,最後還會說明這個新語法背後的技術原理。

... 繼續閱讀 ...

如何避免相同的 ConsoleApp 或 WinForm 同時間重複執行

前幾天在寫主控台程式 (Console Application) 時突然想到一個避免程式在同時間重複執行的機制,在噗浪發問與自行研究過後發現最彈性的實做方式是利用 .NET 內建的 Mutex 類別進行實做,幾乎任何情況下都能輕易實做程式不重複執行的目的,包括單機環境與多人使用的伺服器環境。

... 繼續閱讀 ...

介紹好用元件:ConsoleFx ( 處理命令列程式的函示庫 )

我之前寫 Console Program 時都是自己分析執行時輸入的參數,程式碼寫的也很醜,也很難 reuse,導致每次開發 Console Program 的程式碼都不太一致,有時後為了方便起見就亂寫一通,等累積多了之後就變的不好維護了。

... 繼續閱讀 ...

遠端桌面如何登入主機的主控台(Console)工作階段

當使用遠端桌面進行遠端的伺服器主機遙控的時候,每次連進去主機都會多開一個新的 Session (工作階段),也就是一台機器變成同時兩個使用者登入,即便是同一個使用者帳號。

... 繼續閱讀 ...