.NET 6控制台应用如何添加可执行Main方法以获取命令行参数?
.NET 6 C#控制台应用添加可获取命令行参数的Main方法
你遇到的问题是因为.NET 6及以上版本的控制台项目默认使用顶级语句(Top-level Statements),项目会自动生成隐式的Main方法,直接粘贴显式Main方法会和隐式的冲突,导致代码不执行。以下是两种解决方式:
方式一:替换顶级语句为显式Main方法
- 打开项目中的
Program.cs,删除所有默认代码(比如默认的Console.WriteLine("Hello, World!");) - 粘贴并扩展你的
Main方法来处理命令行参数:
static void Main(string[] args) { Console.WriteLine("hi there"); // 处理命令行参数 if (args.Length > 0) { Console.WriteLine("收到的命令行参数:"); for (int i = 0; i < args.Length; i++) { Console.WriteLine($"参数 {i+1}: {args[i]}"); } } }
方式二:保留顶级语句,直接使用命令行参数
.NET 6+的顶级语句中可以直接使用args变量获取命令行参数,无需显式定义Main方法,示例代码:
Console.WriteLine("hi there"); // 直接处理命令行参数 if (args.Length > 0) { Console.WriteLine("收到的命令行参数:"); foreach (var arg in args) { Console.WriteLine(arg); } }
内容的提问来源于stack exchange,提问作者penstiaGarse
相关产品推荐
相关产品推荐

