System.CommandLine選項Option

前一篇簡單看了一下CommandLine命令的使用,其實在一個命令行工具中,還有一個重要的點,那就是選項——Option,選項是為命提供參數,就好像C#中方法,Command就像方法,Option就像方法的參數,說到參數就有參數類型,形參(形式參數名稱),同理,CommandLine也有,看一個帶Option的例子:

//創建根命令
var rootCommand = new RootCommand("這是一個命令行工具:旦貓");
rootCommand.SetHandler(() =>
{Console.WriteLine("歡迎使用《旦貓》");
});
//創建子命令 show
var showCommand = new Command("show", "顯示一些信息");
//創建子命令選項 times 別名 t
var timesOption = new Option<int>(name: "--times", description: "顯示的次數", getDefaultValue: () => 1)
{IsHidden = true,
};
timesOption.AddAlias("-t");
//添加選項到show命令中
showCommand.AddOption(timesOption);
//設置命令show執行的動作,這是帶上times參數,類型為整型
showCommand.SetHandler((int times) =>
{for (var i = 0; i < times; i++){Console.WriteLine($"這是《旦貓》的show命令,顯示次數={i}");}
}, timesOption);
//添加命令show到 根命令中
rootCommand.Add(showCommand);
await?rootCommand.InvokeAsync(args);

選項可以添加別,添加描述,設置默認值 ,還設置是否可以隱藏,或是必填,選項會在命令的執行方法SetHandler接收。

運行結果,-t 5,循環5次;如果選項參數的類型不對,會有提示;不輸入選項參數,默認直為1,這里很友好的提供了一個Func<int>,而不是一個值,因為這個默認值可能依賴其他資源信息計算出來,而不是一個常量。

def1c08722bb64def166e537e57f7040.png

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/286243.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/286243.shtml
英文地址,請注明出處:http://en.pswp.cn/news/286243.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

長尾關鍵詞如何優化

長尾關鍵詞流量占據全站流量的80%&#xff0c;這是根據御梵景觀后臺數據得出來的結論&#xff0c;千萬不要以為泛關鍵詞給網站帶來的流量大&#xff0c;打個比方花園設計一天帶100個 流量&#xff0c;但是花園設計案例帶10個&#xff0c;花園設計效果圖帶10個&#xff0c;花園設…

【ArcGIS風暴】ArcGIS10.6柵格計算器(Raster Calculator)用法詳解

擴展閱讀: 【ArcGIS風暴】ArcGIS 10.2柵格計算器實用公式大全(經典珍藏版) 【ArcGIS風暴】柵格計算器(Raster Calculator)運算出現錯誤問題及解決方案匯總 文章目錄 1. 柵格計算器簡介2. 柵格計算器用法3. 簡單算術運算4. 數學函數運算5. 空間分析函數運算1. 柵格計算器簡…

C語言試題二十九之編寫函數int function(int lim,int aa[max])求出小于或等于lim的所有素數并放在aa數組中,該函數返回所求的素數的個數。

??個人主頁:個人主頁 ??系列專欄:C語言試題200例目錄 ??推薦一款刷算法、筆試、面經、拿大公司offer神器 ?? 點擊跳轉進入網站 ?作者簡介:大家好,我是碼莎拉蒂,CSDN博客專家(全站排名Top 50),阿里云博客專家、51CTO博客專家、華為云享專家 1、題目 編寫函數i…

三、登錄頁制作《iVX低代碼/無代碼個人博客制作》

注&#xff1a;iVX也有免費直播課《第八期直播課》 一、登錄頁實現 本節需要做的登錄頁如下&#xff1a; 該頁面我們復習可以的值&#xff0c;首先設置整個頁面頁面的垂直和水平對其為居中&#xff0c;隨后一個容器包裹對應的登錄區域&#xff0c;此時我們創建一個頁面命名為…

Android ContentProvider支持跨進程數據共享與互斥、同步 雜談

在開發中&#xff0c;假如&#xff0c;A、B進程有部分信息需要同步&#xff0c;這個時候怎么處理呢&#xff1f;設想這么一個場景&#xff0c;有個業務復雜的Activity非常占用內存&#xff0c;并引發OOM&#xff0c;所以&#xff0c;想要把這個Activity放到單獨進程&#xff0c…

【C#控件詳解】對話框類控件(打開文件,保存文件,選擇字體和顏色)

在實際應用中,我們會用到各種各樣的對話框,如打開文件,保存文件,選擇字體和顏色等等。本文詳細講解C#中的顏色對話框、打開文件對話框、字體對話框、瀏覽文件夾對話框和保存文件對話框。 文章目錄 1. ColorDialog對話框2. FolderBrowserDialog對話框3. FontDialog對話框4. …

動物界的再生一個故事

豬月薪5千&#xff0c;打算用20萬建一個窩&#xff0c;老虎不允許&#xff0c;說私自建就是違章建筑&#xff0c;只允許向狼買。 狼是搞工程的&#xff0c;先用20萬賄賂老虎取得開發權&#xff0c;再用50萬元向老虎買這塊地&#xff0c; 花10萬元把豬圈蓋好&#xff0c;向豬要價…

C語言試題三十之請編寫函數function對長度位7個字符的字符串,除首尾字符外,將其余5個字符按ascii碼降序排列。

??個人主頁:個人主頁 ??系列專欄:C語言試題200例目錄 ??推薦一款刷算法、筆試、面經、拿大公司offer神器 ?? 點擊跳轉進入網站 ?作者簡介:大家好,我是碼莎拉蒂,CSDN博客專家(全站排名Top 50),阿里云博客專家、51CTO博客專家、華為云享專家 1、題目 請編寫函數…

基于.NetCore開發博客項目 StarBlog - (11) 實現訪問統計

系列文章基于.NetCore開發博客項目 StarBlog - (1) 為什么需要自己寫一個博客&#xff1f;基于.NetCore開發博客項目 StarBlog - (2) 環境準備和創建項目基于.NetCore開發博客項目 StarBlog - (3) 模型設計基于.NetCore開發博客項目 StarBlog - (4) markdown博客批量導入基于.N…

【SPSS統計分析】SPSS19.0簡體中文版安裝教程(附SPSS19.0簡體中文版下載)

spss19.0中文版是一款專業數據統計軟件,受到各種社會學科的研究生、研究員的歡迎。軟件能夠對信息的采集、處理、分析進行全面評估和預測。spss19.0中文版新增加了廣義線性混合模型、自動線性模型、一個統計網頁入口portal和直復營銷direct marketing功能等。另外,IBM 針對SP…

Java 比較兩個版本號的大小 (通用)

/*** 版本號比較** param v1* param v2* return 0代表相等&#xff0c;1代表左邊大&#xff0c;-1代表右邊大* Utils.compareVersion("1.0.358_20180820090554","1.0.358_20180820090553")1*/public static int compareVersion(String v1, String v2) {if …

四、登錄注冊頁功能實現《iVX低代碼/無代碼個人博客制作》

注&#xff1a;iVX也有免費直播課《第八期直播課》 首先打開在線編輯器進入我們的項目&#xff1a;https://editor.ivx.cn/ 一、登錄頁功能實現 上一節中已經完成了登錄頁的頁面制作&#xff0c;那么這一節就開始對應的完成登錄頁的功能實現。 登錄頁的功能實現主要是對用戶…

Oracle 12c應用連接VIP輪訓負載均衡?

目前很多生產數據庫都是兩節點RAC&#xff0c;應用連接的數據庫通常會連接SCAN IP或者VIP,這里做一個小實驗&#xff0c;如果我們使用VIP連接&#xff0c; 應該怎樣配置我們的客戶端&#xff0c;負載均衡是否是嚴格意義上的輪訓機制&#xff0c;只有通過自己的測試才能得到準備…

C語言試題三十一之判斷字符串是否為回文?若是則函數返回1,主函數中輸出yes,否則返回0,主函數中輸出no。回文是指順讀和倒讀都是一樣的字符串。

??個人主頁:個人主頁 ??系列專欄:C語言試題200例目錄 ??推薦一款刷算法、筆試、面經、拿大公司offer神器 ?? 點擊跳轉進入網站 ?作者簡介:大家好,我是碼莎拉蒂,CSDN博客專家(全站排名Top 50),阿里云博客專家、51CTO博客專家、華為云享專家 1、題目 請編寫函數…

關于html5

html5 是用來 將 js 和 css 結合起來 從而實現 各種功能 javascript 用來定義 html5 頁面的邏輯 css 來定義 html5 中的顯示樣式

【SignalR全套系列】之在.Net6中實現SignalR分組通信

微信公眾號&#xff1a;趣編程ACE關注可了解更多的.NET日常實戰開發技巧&#xff0c;如需源碼 請公眾號后臺留言 源碼;[如果覺得本公眾號對您有幫助&#xff0c;歡迎關注]前文回顧【SignalR全套系列】之在.Net6中實SignalR通信SignalR中給客戶端分組調用演示服務端代碼實現1.Pr…

【ArcGIS風暴】中國756個氣象臺站分布Shapefile數據下載

在寫論文時,通常要做研究區概況圖,需要添加氣象站點分布,或者在做氣溫或降水空間插值時,需要將氣溫和降水數據鏈接到氣象臺站上。氣象數據通常可以到資源環境科學與數據中心去下載,為了使用的方便,本文分享中國區域756個氣象臺站shp格式矢量數據,如果你的研究區是西北五…

web上傳大文件的配置

1、項目本身的webconfig 在<system.web>字段下 <httpRuntime targetFramework"4.5" requestLengthDiskThreshold"256" maxRequestLength"1000000000" executionTimeout"120"/> 2、找到C:\Windows\System32\inetsrv\confi…

七、文章管理頁面及功能實現《iVX低代碼/無代碼個人博客制作》

注&#xff1a;iVX也有免費直播課《第八期直播課》 一、文章管理頁頁面制作 文章管理頁的基本結構與首頁類似&#xff0c;我們復制一個首頁&#xff0c;并且重命名首頁的名稱為文章管理頁&#xff1a; 我們接著刪除如下圖所框選部分內容&#xff1a; 接著重命名導航為內容…

Android 發起加入QQ群、打開網址、啟動撥打電話界面

/****************** 發起添加群流程。 ** param key 由官網生成的key* return 返回true表示呼起手Q成功&#xff0c;返回fals表示呼起失敗******************/public static void joinQQGroup(Activity _this, String key){Intent intent new Intent();intent.setData(Ur…