從該系列的第一篇文章 .NET平台開源項目速覽(1)SharpConfig配置文件讀寫組件 開始,不知不覺已經到第17篇了。每一次我們都是介紹一個小巧甚至微不足道的.NET平台的開源軟件,或者學習,或者使用,或者介紹,或者分析原理等等,其實這個過程也讓我了解了很多東西。也希望這個分享系列繼續給大家帶來收獲,根據大家的評論和反應,其實說明這些小的組件都還不錯,可以提高開發效率。
今天繼續給大家介紹一款簡單到爆的開源組件,但是可以讓你的控制台瞬間高大上。
1.控制台能有啥滑頭?
借用新生命論壇的一張圖片,其實X組件里面也能這樣控制,只不過我今天看到的組件使用起來更流程和功能單一一點。忽略圖中內容,看控制台顏色:

看到別人的控制台花花綠綠,其實挺好玩的,是不是感覺逼格很高?
如果可以非常靈活的自由控制顏色,那該多好?
沒錯,So Easy。。。其實很簡單。其實Console里面都提供了這些控制功能。只不過作為入門級的Console,貌似沒多少人會想到去研究這里面的東西。
來看看我們今天的主題:FluentConsole
2.FluentConsole基本介紹
FluentConsole是一個托管在github的C#開源組件,地址:https://github.com/ashmind/FluentConsole
FluentConsole,主要功能非常簡單,意思是更流程的控制台。。其實真的Very Fluent。一起看看,時間很短,5分鍾足以。他的基本功能有:
1.可以控制Console輸入的背景,以及字體的顏色;
2.可以使用條件輸出和控制;
3.標准的鏈式寫法,非常靈活和流暢,體驗很棒。
看看下面的例子和效果。
3.使用介紹
FluentConsole使用非常簡單,我們在這里提供2個小節,主要是基本的和擴展的
3.1 基本用法
可以使用FluentConsole.Instance或者FluentConsole來直接操作對應顏色和文字。
我們在使用過程中Line代表換行輸出,效果等同於Console.WriteLine
Text代表直接輸出,不換行,效果等同於Console.Write
可以使用BackGround設置背景,設置字體顏色直接是Text或者Line。看看下面的代碼和注釋
FluentConsole.White.Background.Black.Line("Black");
FluentConsole
.Cyan.Line("Cyan")
.DarkBlue.Line("DarkBlue")
.DarkCyan.Line("DarkCyan")
.DarkGray.Line("DarkGray")
.DarkGreen.Line("DarkGreen")
.DarkMagenta.Line("DarkMagenta")
.DarkRed.Line("DarkRed")
.DarkYellow.Line("DarkYellow")
.Gray.Line("Gray")
.Green.Line("Green")
.Magenta.Line("Magenta")
.Red.Line("Red")
.White.Line("White")
.Yellow.Line("Yellow");
Console.ReadKey();
效果如下:

public static void TestByStatic()
{
//Text相當於 Console.Write
//Line相當於 Console.WriteLine
//將控制台的顏色對象直接用於設置輸出的Text
FluentConsole.Yellow.Text("輸入黃色字體");
FluentConsole.Yellow.Background
.Blue.Line("設置黃色背景,和藍色文字");
FluentConsole.Yellow.Text("黃色")
.Red.Line("紅色");
var console = FluentConsole.Instance;
console.Red.Text("另外的用法");
//條件用法
FluentConsole.Yellow.Line("當前對象狀態:")
.With(c => 10 > 8 ? c.Red : c.Blue)
.Text("成功");
}

4.資源
官網:https://github.com/ashmind/FluentConsole
源代碼與Demo:
怎么樣?趕緊去嘗試一下嗎?
