龙空技术网

开源项目PowerArgs,将命令行参数转换为.NET对象,让程序更方便

编程乐趣 312

前言:

如今你们对“net命令行”大体比较关切,看官们都想要学习一些“net命令行”的相关内容。那么小编也在网摘上网罗了一些有关“net命令行””的相关文章,希望我们能喜欢,你们一起来了解一下吧!

我是编程乐趣,一个10年.Net开发经验老程序员,点击右上方“关注”,每天为你分享开源项目和编程知识。

推荐一个.Net开源库,让命令行参数校验更加简单、方便。

01

项目简介

PowerArgs是一个开源的.NET库,用于将命令行参数转换为.NET对象,方便开发人员在程序中使用。它还额外提供很多功能,如参数校验、自动生成使用帮助和tab补全等,适用于任何使用命令行接口的.NET应用程序。

02

项目特点

1、将命令行参数转换为.NET对象:可以根据参数定义将命令行参数解析为.NET对象,使得程序可以更方便地使用命令行参数。

2、提供参数校验:可以对参数进行校验,确保参数满足指定的规则,如必填字段、数据类型和范围等。

3、自动生成使用帮助:可以根据参数的定义自动生成使用帮助文档,提供用户输入参数的指导。

4、支持tab补全:提供了命令行参数的tab补全功能,使得用户在输入参数时可以更方便地浏览和选择参数。

5、可扩展性:提供了丰富的扩展点,用户可以根据自己的需求自定义扩展,如自定义校验规则、自定义参数类型等。

03

使用方法

简单示例:

using PowerArgs;public class MyArgs{//此参数是必需的,如果未指定,用户将提示。    [ArgRequired(PromptIfMissing = true)]public string StringArg { get; set; }// 此参数不是必需的,但如果指定,则必须大于等于0且小于等于60    [ArgRange(0, 60)]    [ArgRequired(PromptIfMissing = true)]public int IntArg { get; set; }}class Program{static void Main(string[] args)    {try        {var parsed = Args.Parse<MyArgs>(args);            Console.WriteLine("输入的字符: '{0}' 、数值 '{1}'", parsed.StringArg, parsed.IntArg);        }catch (ArgException ex)        {            Console.WriteLine(ex.Message);            Console.WriteLine(ArgUsage.GenerateUsageFromTemplate<MyArgs>());        }    }}

输入正确截图:

每一个参数都明确的提示

输入错误截图:

提示:输入值必须大于等于0且小于等于60。

04

项目地址

我是编程乐趣,一个10年.Net开发经验老程序员,专注开源项目和编程知识分享。

私信回复:【888】,领取.Net视频教程。

- End -

推荐阅读

基于.NET Core内置浏览器窗体应用程序界面框架

C#开发的计算机时区、语言环境模拟器

一个比较全面的C#公共帮助类

基于TDesign风格的Blazor企业级UI组件库

基于.NetCore+Element开源的前后端分离学生管理系统

标签: #net命令行